Một trong
những tác vụ đặc biệt 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 1 file dữ liệu. Điều này giúp cho PHP trở
nên tinh tế và dễ tùy biến hơn khi xử lý 1 lượng dữ liệu có quy mô lớn. Việc
thao tác mở, đọc, ghi, đóng file này cũng có ý nghĩa tuần tự như bạn đang làm
việc trực tiếp trên 1 file dữ liệu thực thụ.
đóng mở 1 file trong PHP
Để
mở 1 file ta sử dụng cú pháp sau: fopen("Đường dẫn", thuộc tính).
Trong
đó Đường dẫn chính là đường dẫn tới file cần mở.
Thuộc
tính bao gồm các quyền hạn cho phép thao tác trên file đó như thế nào.
Các thuộc tính cơ bản :
Ví dụ:
<?php
$fp=fopen("test.txt",r)or exit("khong tim thay
file can mo");
?>
Tương tự như thế, để đóng 1 file ta có cú pháp như sau: fclose(file vừa
mở)
Ví dụ:
<?php
$fp=fopen("test.txt",r)or exit("khong tim thay
file can mo");
fclose($fp);
?>
Việc mở và đóng này không có ý nghĩa là chúng đã được đọc. Muốn đọc được
nội dung của file chúng ta lại tiếp tục với thao tác lấy dữ liệu từ file nữa.
đọc 1 file trong PHP
PHP cho ta nhiều sự lựa chọn trong việc đọc 1 file. Có nhiều hình thức
hỗ trợ nhưng hiện nay 2 hình thức phổ biến nhất vẫn là đọc file theo từng dòng
và đọc file theo từng ký tự.
- Đọc file theo từng dòng:
Cú pháp : fgets(file vừa mở).
Ví dụ:
<?php
$fp=fopen("test.txt",r)or exit("khong tim thay
file can mo");
echo fgets($fp);
fclose($fp);
?>
- Đọc file theo từng ký tự:
Cú pháp : fgetc(file vừa mở).
Ví dụ:
<?php
$fp=fopen("test.txt",r)or exit("khong tim thay
file can mo");
echo fgetc($fp);
fclose($fp);
?>
Quy trình đọc sẽ diễn ra theo từng yêu cầu của cú pháp sử dụng. Nhưng sẽ
có sự ràng buộc bởi việc kiểm tra đã đến cuối file chưa ?.
Ở đây chúng ta dùng cú pháp sau: feof(file
vừa mở)
Ví dụ:
<?php
$fp=fopen("test.txt",r)or exit("khong tim thay
file can mo");
while(!feof($fp))
{
echo fgets($fp);
}
fclose($fp);
?>
ghi file trong PHP
PHP
cung cấp cho ta 1 cú pháp nhỏ để ghi dữ liệu vào 1file
Cú
pháp cơ bản :
fwrite("file vừa mở", "Nội dung cần ghi vào file")
Ví dụ:
<?php
$fp=fopen("test.txt",a)or exit("khong tim thay
file can mo");
$news="Trung Tam Tin hoc Viet Chuyenn";
fwrite($fp,$news);
fclose($fp);
?>
Tổng kết:
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 học 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.
đọc 1 file trong PHP
PHP cho ta nhiều sự lựa chọn trong việc đọc 1 file. Có nhiều hình thức
hỗ trợ nhưng hiện nay 2 hình thức phổ biến nhất vẫn là đọc file theo từng dòng
và đọc file theo từng ký tự.
- Đọc file theo từng dòng:
Cú pháp : fgets(file vừa mở).
Ví dụ:
$fp=fopen("test.txt",r)or exit("khong tim thay file can mo");
echo fgets($fp);
fclose($fp);
- Đọc file theo từng ký tự:
Cú pháp : fgetc(file vừa mở).
Ví dụ:
$fp=fopen("test.txt",r)or exit("khong tim thay file can mo");
echo fgetc($fp);
fclose($fp);
?>
Quy trình đọc sẽ diễn ra theo từng yêu cầu của cú pháp sử dụng. Nhưng sẽ
có sự ràng buộc bởi việc kiểm tra đã đến cuối file chưa ?.
Ở đây chúng ta dùng cú pháp sau: feof(file
vừa mở)
Ví dụ:
$fp=fopen("test.txt",r)or exit("khong tim thay file can mo");
while(!feof($fp))
{
echo fgets($fp);
}
fclose($fp);
?>
ghi file trong PHP
PHP
cung cấp cho ta 1 cú pháp nhỏ để ghi dữ liệu vào 1file
Cú pháp cơ bản : fwrite("file vừa mở", "Nội dung cần ghi vào file")
<?php
$fp=fopen("test.txt",a)or exit("khong tim thay file can mo");
$news="Trung Tam Tin hoc Viet Chuyenn";
fwrite($fp,$news);
fclose($fp);
?>
Cú pháp cơ bản : fwrite("file vừa mở", "Nội dung cần ghi vào file")
Ví dụ:
$fp=fopen("test.txt",a)or exit("khong tim thay file can mo");
$news="Trung Tam Tin hoc Viet Chuyenn";
fwrite($fp,$news);
fclose($fp);
?>
Tổng kết:
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 học 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.