Xử lý file trong PHP: Tạo, mở, ghi, đọc, xóa

 

PHP có thể thao tác dữ liệu và xử lý dữ liệu thông qua quá trình nhận và đọc dữ liệu trên một file, quá trình làm việc với file trong PHP diễn ra như sau: Mở – Đọc (hoặc ghi) – Đóng file. Đó là một trong những tác vụ quan trọng của PHP là cho phép xử lý dữ liệu trực tiếp thông qua quá trình nhận và đọc nội dung trên file dữ liệu.

1. Mở file- fopen 

  1. <?php  
  2. //giaotrinhhay.com.txt– Xu ly file  
  3. fopen(“Duong dan file”,”Che do mo file”);  
  4. // Nen gan cho ham tren 1 bien sau nay tien su dung nhu ben duoi  
  5. $file=“giaotrinhhay.com.txt”; //File can thuc thi  
  6. $ofile= fopen($file,”r”); // Mu file o che do chi doc  
  7. ?>  

– Chế đội mở file: 


2. Đóng file- fclose()
– Sau khi mở cần phải đóng nên sinh ra hàm này thôi 
– Cú pháp: fclose(“File cần đóng”);
File cần đóng ở đây không phải link file mà là quá trình mở file nhé

  1. <?php  
  2. $file=giaotrinhhay.com.txt; //File can thuc thi  
  3. $ofile= fopen($file,”r”); // Mo file o che do chi doc  
  4. $cfile= fclose($ofile);  
  5. ?>  

3. Ghi nội dung vào file- fwrite()

  1. <?php  
  2. $wfile=fwrite(“File can ghi”,”Noi dung file”);  
  3. ?>  

File cần ghi chính là quá trình mở file. Ví dụ: 

  1. <?php  
  2. $file=giaotrinhhay.com.txt; //File can thuc thi  
  3. $ofile= fopen($file,”r+”); // Mo file o che do doc+ghi  
  4. $wfile= fwrite($ofile,”thuthuatlaptrinh.net-Xu ly file trong PHP”);  
  5. $cfile= fclose($ofile);  
  6. ?>  

4. Đọc nội dung file
4.1. Đọc chuỗi- fgets(); 

  1. <?php  
  2. fgets(“File can doc”);  
  3. ?>  

File cần đọc chính là quá trình mở file $ofile nhé

  1. <?php  
  2. $file=giaotrinhhay.com.txt; //File can thuc thi  
  3. $ofile= fopen($file,”r+”); // Mo file o che do ghi doc  
  4. $wfile= fwrite($ofile,”giaotrinhhay.com.txt – Xu ly file trong PHP”);  
  5. $cfile= fclose($ofile);  
  6. // Ghi noi dung xong phai dong lai, doc lai tiep tuc mo, doc xong roi dong  
  7.   
  8. $ofile= fopen($file,”r”); // Chi can doc  
  9. $content= fgets($ofile); // Lay noi dung file  
  10. $cfile= fclose($ofile);// Dong file  
  11. echo $content;// In noi dung da doc  
  12. ?>  

Tuy nhiên xét trường hợp file vietsource.txt có nội dung

giaotrinhhay.com.txt
PHP
ASP.NET
HTML5/CSS3

 

Thì fgets() chỉ đọc được nội trên 1 hàng, tức là đọc hết hàng đầu hàng sau nó ko đọc được nữa. Vì vậy để lấy được nội dung của toàn file chúng ta kiểm tra xem nội dung file còn không

– Hàm feof() kiểm tra xem nội dung hết chưa. Giờ chúng ta sẽ kiểm tra nếu chưa hết thì tiếp tục in 

  1. <?php  
  2. $file=“vietsource.txt”; //File can thuc thi  
  3. $ofile= fopen($file,”r+”); // Mo file o che do ghi + doc  
  4. $wfile= fwrite($ofile,”giaotrinhhay.com.txt– Xu ly file trong PHP”);  
  5. $cfile= fclose($ofile);  
  6.   
  7. $ofile= fopen($file,”r”); // Chi can doc  
  8. while(!feof($ofile)){ // Neu file chua het  
  9. $content= fgets($ofile); // Lay noi dung file  
  10. echo $content.”  
  11. “;  
  12. }  
  13. $cfile= fclose($ofile);// Dong file  
  14. ?>  

4.2. Đọc ký tự- fgets()
– Tương tự như hàm fgets(), tuy nhiên hàm này chỉ đọc 1 ký tự, muốn đọc hết chúng ta sử dụng như sau: 

  1. $content=“”;  
  2. while(!feof($ofile)){ // Neu file chua het  
  3. $content .= fgets($ofile); // Lay noi dung file  
  4. echo $content.”  
  5. “;  
  6. }  

Vì ký tự nên cần nối chuỗi bằng $content .= fgets($ofile); 
5. Xóa một tập tin 

  1. <?php  
  2. $my_file = ‘giaotrinhhay.com.txt‘;  
  3. unlink($my_file);  
  4. ?>  

Tóm lại: Việc sử dụng file một cách thành thạo sẽ giúp bạn dễ dàng vận hành các ứng dụng mang quy mô vừa và nhỏ như: website nhiều ngôn ngữ, bộ đếm,…và cả những công nghệ web mới như XML một cách dễ dàng. Qua bài này chúng ta cũng hiểu được nguyên lý hoạt động, trình tự xử lý 1 file dữ liệu khi chúng được triệu gọi trong tài liệu PHP.

Nguyễn Tấn Tài

Nguyễn Tấn Tài Founder/ CEO Giaotrinhhay.com - Giáo Trình Hay Chia Sẻ: Tài liệu SEO website, DIGITAL MARKETING, Ebook CNTT, Mẹo vặt, Phần mềm, Thủ thuật PC và kho tài liệu học tập hữu ích miễn phí.

Bài viết liên quan

DEVOPS LÀ GÌ?

DEVOPS LÀ GÌ? Devops là gì Theo Wikipedia Devops là thuật ngữ chỉ tập hợp các hoạt [...]

Database là gì?

Database là gì? Database được gọi là Cơ sở dữ liệu, là một bộ sưu tập dữ liệu có [...]

Tạo Responsive và Mobile-Friendly Tooltip bằng jQuery

Việc tìm kiếm một chức năng Tooltip phù hợp với website hay blog thì không [...]

Code tự động lưu ảnh vào host khi copy bài từ nguồn khác

Như tiêu tiêu đề thôi hôm nay mình sẽ share đoạn code tự động lưu [...]

Tài liệu lập trình về Yii framework

Tài liệu lập trình về Yii framework Yii không phải là cái gì đó mới [...]

Sypex Dumper: Upload và backup dữ liệu lớn – hướng dẫn sử dụng Sypex Dumper

Xin chào các bạn, lần trước tôi có đăng bài viết làm thế nào để [...]

Leave a Reply