Hướng dẫn dùng warning: file_put_contents trong PHP
hàm Show 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ápCú pháp: Trong đó:
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 Code file_put_contents('test.txt', 'this is a test'); //đọc toàn bộ file echo file_get_contents('test.txt'); Sử dụng 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 Xin chào tất cả anh em đang tìm hiểu về PHP, hôm nay chúng ta sẽ tìm hiểu về một hàm tên là File_put_contents(). Hàm này có chức năng sẽ ghi dữ liệu vào một file được tạo ra bằng PHP. Cú pháp: file_put_contents(filename, data, mode, context) Các tham số truyền vào:
Ví dụ 1: Ví dụ 2: Kết luận: Với hàm file_put_contents() bạn sẽ đưa dữ liệu từ input vào trong một tập tin thông qua Form dễ dàng. Hãy thử tạo file và làm theo hướng dẫn xem thế nào nhé. Hàm file_put_contents được biết đến là một cơ sở dữ liệu quan trọng trong giới công nghệ. Lý do vì sao nó lại trở nên cần thiết như vậy, hãy cùng nhau tham khảo bài viết dưới đây. file_put_contents trong php có mục đích dùng để ghi lại dữ liệu trong một file, vậy nó có giá trị như thế nào? 1. Định nghĩa và cú pháp file_put_contents trong phpNhiệm vụ của file_put_contents trong php là dùng để ghi dữ liệu vào một thư mục nào đó. Có hai trường hợp nếu filename này không tồn tại thì file mới được tạo ra, còn ngược lại thì file sẽ ghi đè. Hàm này có cấu trúc tương tự như fopen(), fwrite() và fclose(). Mục đích đều truyền dữ liệu vào một file. Tuy nhiên trong trường hợp FILE_APPEND flags được sử dụng thì file không thể ghi đè được. file_put_contents trong php có cú pháp khá đơn giản: file_put_contents ( string $filename , mixed $data [, int $flags = 0 [, resource $context ]] ) : int Trong đó:
FILE_USE_INCLUDE_PATH: Chứa nhiệm vụ tìm kiếm $filename và đa phần hàm này sẽ được tìm trong include directory. FILE_APPEND: $data sẽ không ghi đè trong trường hợp file đã tồn tại và sẽ được kết nối ở file cuối. LOCK_Ex: flock () sẽ xảy ra giữa fopen () và fwrite (). Đây được coi là một khoá duy nhất trên tệp khi bạn bắt đầu viết.
Giá trị trả về Số lượng byte sẽ được trả về khi tới file, tuy nhiên nó cũng có thể trả về Boolean FALSE. Bạn cần sử dụng phương thức === để xem xét giá trị trả về của hàm này. Errors: Nếu không tìm thấy filename hoặc maxlength nó sẽ xảy ra lỗi E_WARNING. Đây là lỗi khá phổ biến mà nhiều người gặp phải. Bạn sẽ không tìm thấy filename nếu giá trị nhỏ hơn 0. Ví dụ: Với giá trị 1 khi dùng code $file = ‘people.txt’; // Mở tệp để lấy nội dung hiện có $current = file_get_contents($file); // Thêm nội dung mới vào file. $current .= “John Smith\n”; // Viết thêm nội dung vào file. file_put_contents($file, $current); ?> Với giá trị 2 khi dùng flash $file = ‘people.txt’; // The new person to add to the file $person = “John Smith\n”; // Viết nội dung vào một tập tin, //sử dụng cờ FILE_APPEND để nối nội dung vào cuối tệp // và cờ LOCK_EX để ngăn chặn bất kỳ ai khác ghi vào tệp cùng một lúc file_put_contents($file, $person, FILE_APPEND | LOCK_EX); ?> 2. Sự thay đổi của file_put_contents trong phpHiện nay, php 5.1.0 được hỗ trợ thêm LOCK_EX cùng chức năng truyền tải cho tham số dữ liệu. Các hàm liên quan đến php gồm fopen(), fwrite(), file_get_contents(), stream_context_create(). Nếu đặt một tập tin trong thư mục không tồn tại thì việc đặt nội dung của bạn sẽ không thể hoàn thành. Thay vào đó nó sẽ tạo ra 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); } ?> Khi bạn viết vào tệp nhiều lần thì nên dùng fopen và fwrite, fclose để tiến hành nhanh chóng hơn. Sử dụng file_put_contents() và fopen() fwrite() sẽ là 1.000.000 lần. Dưới đây là một bản đơn giản hoá của function file_force_contents( $fullPath, $contents, $flags = 0 ){ $parts = explode( ‘/’, $fullPath ); array_pop( $parts ); $dir = implode( ‘/’, $parts ); if( !is_dir( $dir ) ) mkdir( $dir, 0777, true ); file_put_contents( $fullPath, $contents, $flags ); } file_force_contents( ROOT.’/newpath/file.txt’, ‘message’, LOCK_EX ); ?> Php được coi là phiên bản nhị phân có tên binary-safe. URL có thể dùng làm trên tệp nếu fopen wrappers được bật. Hi vọng với chia sẻ của chúng tôi về file_put_contents trong php sẽ giúp bạn hiểu rõ hơn về nội dung của các hàm. Cảm ơn đã theo dõi và chúc các bạn mạnh khỏe. |