Truy vấn dữ liệu file trong PHP

Một phần của tài liệu Giáo trình môn lập trình ứng dụng web với ngôn ngữ PHP (Trang 32 - 35)

1. Mở file

Trong PHP để mở 1 file trên máy chủ bạn dùng hàm fopen có cu pháp sau :

$biến=fopen(tên file với đầy đủ đuờng dẫn, chế độ mở file)

Bảng chế độ mở file

Mode Diễn giải

r Mở file dưới dạng Read-only r+ Mở file dưới dạng Read-Write w Mở file dưới dạng Write-only

w+ Mở file dưới dạng Write-Read. Nếu file này tồn tại, nội dung sẽ bị xóa, nếu file không tồn tại chúng sẽ được tạo ra

a Mở file dưới dạng Append. Ghi dữ liệu từ phần cuối file trở đi, trong trường hợp file không tồn tại chúng sẽ được tạo ra

a+ Mở file dưới dạng Append. Ghi dữ liệu từ đầu file trở đi, trong trường hợp file không tồn tại chúng sẽ được tạo ra

<?php

$f="c:\hopdong\\thanhly.txt"; $ft=fopen($f,"a");

?>

Bạn có thể mở file thông qua Ftp hay HTTP

<?php $f="ftp://www.abc.com/listcard.txt"; $ft=fopen($f,"a"); $f="http://www.abc.com/listcard.txt"; $ft=fopen($f,"a"); ?>

Để kiểm tra việc mở file có được hay không ta dùng cơ chế bẫy lỗi bằng cách dùng dấu @ trước biến $f <?php $f="c:\hopdong\\thanhly.txt"; @ $ft=fopen($f,"a"); if (!$ft) {

echo "Your Orders could not process in this time"; echo "Please check your system and try again!";

} else

echo "Open file ok!"; ?>

2. Đọc nội dung trên file

• Để đọc nội dung trên 1 file bạn dùng hàm fgets(biến file, số ký tự)

• Để biết được nội dung file đã hết hay chưa bạn dùng hàm feof(), hàm này cho giá trị true khi con trỏ đến cuối file.

<?php

$f="c:\hopdong\\thanhly.txt"; @ $ft=fopen($f,"r");

if(!$ft) {

echo "No Orders Pending, Please try later!<br>"; exit;

} else {

echo "<b>Orders Processing</b><br>"; while (!feof($ft)) { $order=fgets($ft,10); echo $order."<br>"; } }

echo "Read file successfull!"; ?>

• Để đọc tòan bộ nội dung fiel bạn nên dùng hàm readfile()

<?php

$f="c:\hopdong\\thanhly.txt"; @ $order=readfile($f); if(!$order)

{

echo "No Orders Pending, Please try later!<br>"; exit;

} else {

echo "<b>Orders Processing</b><br>"; echo $order;

}

echo "<br>Read file successfull!"; ?>

3. Ghi dữ liệu vào file

Muốn ghi file thì thư mục chưa các file cần ghi phải cấp quyền modify cho user Internet Guest

Account.

• Để ghi nội dung vào file bạn dùng hàm fwrite(biến file, nội dung)

<?php

$f="c:\hopdong\\thanhly.txt"; @ $ft=fopen($f,"a");

if (!$ft) {

echo "Your Orders could not process in this time<br>"; echo "Please check your system and try again!";

} else

{

$f="Your Orders have been write in this time"; fwrite($ft,$f);

echo "Write to file successfull!"; }

?>

• Khi ghi dữ liệu ra file bạn có thể dúng \t để nhảy tab hay \n để xuống hàng

<?php

$f="c:\hopdong\\thanhly.txt"; @ $ft=fopen($f,"a");

if (!$ft) {

echo "Your Orders could not process in this time<br>"; echo "Please check your system and try again!";

} else { $p=10; for($q=1;$q<=5;$q++) { $outstring=$q." bottle\t".$p; $outstring=$outstring. " vnd\t".$q*$p."\n"; fwrite($ft,$outstring); }

echo "Write to file successfull!"; }

?>

4. Đóng file

Sau khi mở file để đọc hay ghi bạn file đóng file lại bằng hàm fclose(biến file) . Hàm trả về true nếu đóng file thành công, còn không trả về false.

5. Kiểm tra file

Khi mở file thông thường b5n nên kiểm tra xem file đó có tồn tại hay không bạn nên dùng hàm

file_exists()

<?php

$f="c:\hopdong\\thanhly.txt"; //Kiem tra file

if (!file_exists($f)) {

echo "No Orders Pending, Please try later!<br>"; exit;

} else {

$order=readfile($f);

echo "<br><b>Orders Processing</b><br>"; echo $order;

}

echo "<br>Read file successfull!"; ?>

6. Kiểm tra dung lượng của file

Khi mở file để biết được dung lượng của file đó bao nhiêu. Hàm filesize() cho biết tổng số byte của file cần mở.

<?php

$f="c:\hopdong\\thanhly.txt"; //Kiem tra file

if (!file_exists($f)) {

echo "No Orders Pending, Please try later!<br>"; exit;

} else {

$size=filesize($f);

echo "Size of <b>Orders Processing</b> "; echo "is $size byte(s)<br>";

} ?>

7. Xóa file

Để xó hẳn 1 file trên máy chủ bạn dùng unlink() với đầy đủ đường dẫn của file cần xóa. Tuy nhiên bạn nên kiển tra trước file đó có tồn tại hay không trườc rồi mới xóa.

<?php

$f="c:\hopdong\\thanhly.txt"; //Kiem tra file

if (!file_exists($f)) {

echo "No Orders Pending, "; echo "Please try later!<br>"; exit; } else { $ok=unlink($f); if ($ok)

echo "File have been deleted!"; else

echo "File could not delete!"; }

Một phần của tài liệu Giáo trình môn lập trình ứng dụng web với ngôn ngữ PHP (Trang 32 - 35)

Tải bản đầy đủ (DOC)

(35 trang)
w