Hướng dẫn file_put_contents php

hàm file_put_contents() sẽ ghi nội dung vào file truyền vào. Nếu file không tồn tại, hàm sẽ tạo file và ghi nội dung vào đó. Nếu file đã tồn tại, hàm sẽ ghi đè lên nội dung cũ nếu tham số FILE_APPEND không được truyền vào.

Nội dung chính

  • Kết quả trả về
  • Định Nghĩa.
  • Trong đó.
  • Giá trị trả về.
  • Errors/Exceptions.
  • ví dụ 1 sử dụng đơn giản
  • Ví dụ 2 sử dụng flags.
  • Sự thay đổi qua các phiên bản.
  • Hàm liên quan.
  • Thông tin thêm.

Hướng dẫn file_put_contents php

Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Cú pháp

Cú phápfile_put_contents( $filename, $data, $flag);

Trong đó:

  • $filename là đường dẫn tới file.
  • $data là nội dung của file.
  • $flag là tham số, mang một trong các giá trị sau:
    • FILE_USE_INCLUDE_PATH : hàm sẽ tìm kiếm $filename trong include directory, xem thêm include_path  để tìm hiểu.
    • FILE_APPEND : nếu file đã tồn tại, hám sẽ không ghi đè $data vào nội dung sẵn có mà sẽ nối $data vào cuối file.

Kết quả trả về

Hàm sẽ trả về số byte của nội dung $data đã được ghi vào $filename. Nếu chạy thất bại hàm trả về False.

Bài viết này được đăng tại [free tuts .net]

Ví dụ

Ví dụ đơn giản về hàm file_put_contents():

Code

file_put_contents('test.txt', 'this is a test');
//đọc toàn bộ file
echo file_get_contents('test.txt');

Sử dụng $flag, file test.txt tạo từ ví dụ 1:

Code

file_put_contents('test.txt', ' used file_get_contents function.', FILE_APPEND);
//đọc toàn bộ file
echo file_get_contents('test.txt');

Kết quả

this is a test used file_get_contents function.

Tham khảo: php.net

  • Định Nghĩa.
  • Cú pháp.
    • Cú pháp:
    • Trong đó.
    • Giá trị trả về.
    • Errors/Exceptions.
  • Ví dụ.
    • ví dụ 1 sử dụng đơn giản
      • code:
    • Ví dụ 2 sử dụng flags.
  • Sự thay đổi qua các phiên bản.
  • Ghi chú.
  • Hàm liên quan.
  • Thông tin thêm.

Định Nghĩa.

Hàm file_put_contents() dùng để ghi dữ liệu vào một file. Hàm này tương tự nhu các hàm fopen(), fwrite() và fclose() cùng đều ghi dữ liệu tới một file. Nếu filename không tồn tại, thì file được tạo. Nếu tồn tại, file sẽ được ghi đè, trừ khi FILE_APPEND flags được thiết lập.

Cú pháp.

Cú pháp:

file_put_contents ( string $filename , mixed $data [, int $flags = 0 [, resource $context ]] ) : int

Trong đó.

  • $filename là đường dẫn tới file.
  • $data là nội dung của file.
  • $flag là tham số, mang một trong các giá trị sau:
    • FILE_USE_INCLUDE_PATH : hàm sẽ tìm kiếm $filename trong include directory, xem thêm include_path  để tìm hiểu.
    • FILE_APPEND : nếu file đã tồn tại, hám sẽ không ghi đè $data vào nội dung sẵn có mà sẽ nối $data vào cuối file.
    • LOCK_EX Có được một khóa độc quyền trên tệp trong khi tiến hành viết. Nói cách khác, một cuộc gọi flock () xảy ra giữa cuộc gọi fopen () và cuộc gọi fwrite (). Điều này không giống với cuộc gọi fopen () với chế độ “x”.
  • $context Một context resource hợp lệ được tạo bởi stream_context_create().

Giá trị trả về.

  • Hàm này trả về số lượng byte đã được ghi tới file, hoặc FALSE nếu thất bại.
Lưu ý: 
Hàm này có thể trả về Boolean FALSE, nhưng cũng có thể trả về giá trị không Boolean ước tính cho FALSE.
Vui lòng đọc phần trên Booleans để biết thêm thông tin. Sử dụng toán tử === để kiểm tra giá trị 
trả về của hàm này.

Errors/Exceptions.

  • Một lỗi mức E_WARNING được tạo nếu không thể tìm thấy filename, maxlength nhỏ hơn 0 hoặc nếu tìm kiếm  offset chỉ định trong luồng không thành công.

Ví dụ.

ví dụ 1 sử dụng đơn giản

code:

Ví dụ 2 sử dụng flags.

Sự thay đổi qua các phiên bản.

  • PHP 5.1.0 đã thêm hỗ trợ cho LOCK_EX và khả năng truyền tài nguyên luồng cho tham số dữ liệu

Ghi chú.

  • Hàm này là kiểu binary-safe.(Nhị phân).
  • tiền boa Một URL có thể được sử dụng làm tên tệp với chức năng này nếu trình  fopen wrappers đã được bật. Xem fopen() để biết thêm chi tiết về cách chỉ định tên tệp. Xem các Supported Protocols and Wrappers để biết các liên kết đến thông tin về khả năng của các trình bao bọc khác nhau, ghi chú về cách sử dụng và thông tin về bất kỳ biến được xác định trước nào mà chúng có thể cung cấp.

Hàm liên quan.

  • fopen() – Mỏ một file hoặc một URL
  • fwrite() – Binary-safe file write
  • file_get_contents() – Đọc nội dung file ở dạng string.
  • stream_context_create() – Tạo a stream context

Thông tin thêm.

  • Tập tin đặt nội dung thất bại nếu bạn cố gắng đặt một tập tin trong một thư mục không tồn tại. Điều này tạo ra thư mục.
    function file_force_contents($dir$contents){
            $parts explode('/'$dir);
            $file array_pop($parts);
            $dir '';
            foreach($parts as $part)
                if(!is_dir($dir .= "/$part")) mkdir($dir);
            file_put_contents("$dir/$file"$contents);
        }
    ?>
  • Rõ ràng là chỉ nên sử dụng điều này nếu bạn đang viết một lần, nếu bạn đang viết nhiều lần vào cùng một tệp, bạn nên tự xử lý nó bằng fopen và fwrite, fclose khi bạn viết xong. So sánh tốc độ của file_put_contents() với các hàm tương tự, – Sử dụng file_put_contents() 1.000.000 lần.
    Thực tế 0m3.932s
    Người dùng 0m2.487s
    Hệ thống 0m1.437s
    – Sử dụng fopen() fwrite() cũng 1.000.000 Lần.
    Thực tế 0m2.265s
    Người dùng 0m1.819s
    Hệ thống 0m0.445s
  • Một phiên bản đơn giản hóa của phương thức: http://php.net/manual/ru/feft.file-put-contents.php#84180

Các bạn có thể xem chi tiết hơn trên php.net.

Hi vọng với bài viết này, bạn đã hiểu rõ ứng dụng của hàm file_put_contents() trong PHP. Nếu bạn thấy bài viết hay và có ý nghĩa hãy like và chia sẻ bài viết này để mọi người cùng nhau học tập nhé. Cảm ơn các bạn đã ghé thăm codetutam.com