Sử dụng cơ chế xử lý tệp PHP, chúng tôi có thể lấy tài nguyên tệp bên ngoài để lưu trữ làm tài liệu tham khảo. Chúng tôi đã chạm một chút vào tài nguyên tệp trong khi thảo luận về Dữ liệu tài nguyên PHP
PHP cung cấp tập hợp các hàm dựng sẵn để xử lý tệp. Một số chức năng là, fopen[], file_exists[], file_get_contents[], v.v.
Một số thao tác cơ bản để xử lý tệp được liệt kê bên dưới
- mở tập tin
- Làm việc với tệp đọc, ghi và nối thêm
- đóng tập tin
mở tập tin
Để mở một tệp ta cần chỉ định tên tệp đó và chế độ. Chế độ hoạt động liên quan đến giới hạn truy cập của tệp sẽ được mở
Phương thức hoạt động
Trong xử lý tệp PHP, có bốn bộ chế độ có thể. Đó là,
- {r and r+} – Để đọc các tệp hiện có
- {w and w+} – Để thay đổi toàn bộ nội dung tập tin
- {a và a+} – Để thêm nội dung sau nội dung tệp hiện có
- {x and x+} – Để tạo một tệp mới và làm việc với nó
Đọc tập tin hiện có
Trong PHP, các loại hai chế độ xử lý tệp sau đây được sử dụng để đọc các tệp hiện có. Con trỏ tệp sẽ trỏ đến đầu tệp
Chế độ hoạt động Chế độ tệp Con trỏ tệp Định vị chỉ đọcBắt đầu nội dung tệp+đọc-ghiBắt đầu nội dung tệpSử dụng hàm fopen[], chúng ta có thể mở tệp theo tên và chế độ tương ứng. Ví dụ,
";
}
?>
Ghi chú. Chúng ta nên đảm bảo rằng tệp được chỉ định tồn tại. Nếu không sẽ xảy ra lỗi sau
Warning: fopen[hello.txt] [function.fopen]: failed to open stream: No such file or directory in ...
Warning: fgets[] expects parameter 1 to be resource, boolean given in ...
Viết vào một tập tin
Để thực hiện thao tác ghi ta có 2 lựa chọn là chọn chế độ mở file. Đó là,
Chế độ hoạt động Chế độ tệp Con trỏ tệp Vị trí chỉ ghiBằng cách sử dụng các chế độ này, toàn bộ nội dung tệp sẽ bị xóa và con trỏ sẽ tập trung vào vị trí bắt đầu của nội dung tệp. Phương pháp này được sử dụng để thay đổi hoàn toàn nội dung tệp hiện có
Ví dụ,
Nối nội dung vào tệp
Trong thao tác này, nội dung hiện có của tệp sẽ không bị xóa. Thay vào đó, chúng ta có thể thêm nội dung mới liên tục. Tại đây, con trỏ tệp sẽ trỏ đến cuối tệp. Và phương thức hoạt động có thể là,
Chế độ hoạt độngChế độ tệpCon trỏ tệpVị trí chỉ ghiBắt đầu nội dung tệpa+đọc-ghiBắt đầu nội dung tệpMã sẽ tương tự như mã ghi tệp ngoại trừ chế độ được chỉ định để mở tệp. Ví dụ,
Ghi chú. Trong PHP, chế độ ghi và nối sẽ mở tệp được chỉ định nếu tồn tại. Nếu không, một tệp mới sẽ được tạo để thực hiện ghi và nối tệp
tạo một tập tin mới
Ở đây cũng có sẵn hai chế độ xử lý tệp được sử dụng để ghi vào một tệp mới được tạo
Chế độ hoạt độngChế độ tệpVị trí con trỏ tệpxwrite-only. –x+đọc-ghi. –Ví dụ,
thận trọng. đã tồn tại, thì quá trình thực thi sẽ bị dừng với lỗi sau
Warning: fopen[hello.txt] [function.fopen]: failed to open stream: File exists in .. on line ...
Warning: fwrite[] expects parameter 1 to be resource, boolean given in .. on line ...
Đóng tệp
Sau khi thực hiện tất cả các thao tác trên tệp của PHP, chúng ta cần đóng nó bằng cách sử dụng hàm fclose[]. hàm fclose[] sẽ giữ con trỏ tệp là tham chiếu cho tài nguyên tệp. Trong PHP, chúng ta có thể sử dụng hàm fclose[] như hình bên dưới
Trong xử lý tệp, trước tiên chúng ta cần mở tệp bằng phương thức fopen[] mà chúng ta muốn đọc. Các phương thức lấy nội dung tập tin
fgets[]. Phương thức fgets[] đọc từng dòng tệp. chúng tôi sử dụng lệnh feof để phát hiện phần cuối của tệp và đọc từng dòng tệp
sợ hãi[]. Phương thức fread[] được sử dụng khi chúng ta muốn đọc file với kích thước giới hạn. Chúng tôi vượt qua giới hạn theo byte trong fread[] phương thức và sau đó phương thức này đọc tệp đến giới hạn đó và để lại phần còn lại của tệp
Bắt đầu Thương mại điện tử không đầu
ngay bây giờ. Đọc thêm
fgetss[]. Phương thức fgetss[] có thể đọc nội dung HTML trong một tệp và sẽ cung cấp văn bản đơn giản dưới dạng đầu ra
thử nghiệm. txt
Ba trong số các phương thức sẽ cho cùng một đầu ra như hình bên dưới
Các phương thức khác với việc xử lý tệp PHP
Có nhiều phương pháp khác ngoài cách xử lý tệp PHP truyền thống mà chúng tôi có thể sử dụng cho các yêu cầu khác nhau