Mở, Đọc, Đóng File trong PHP

Mở tệp - fopen()

Hàm fopen() của PHP được sử dụng để mở một file. Nó yêu cầu 2 tham số, tham số thứ nhất là tên file, và tham số thứ 2 là mode, tức là chế độ để hoạt động.

Tập tin có thể được mở ở một trong các mode sau:

Mode Mục đích
r

Mở file và chỉ đọc.

Di chuyển con trỏ file về đầu file

r+

Mở file cho việc đọc và ghi.

Di chuyển con trỏ về đầu file

w

Mở file và chỉ ghi.

Di chuyển con trỏ về đầu file

và cắt bỏ file về độ dài là 0.

Nếu các file không tồn tại, nó sẽ cố gắng tạo ra một file.

w+

Mở file cho việc đọc và ghi.

Di chuyển con trỏ về đầu file

và cắt bỏ file có độ dài là 0.

Nếu các file không tồn tại, nó sẽ cố gắng tạo ra một file.

a

Mở file với mục đích chỉ ghi.

Di chuyển con trỏ về cuối file

Nếu các file không tồn tại, nó sẽ cố gắng tạo ra một file.

a+

Mở file với mục đích đọc và ghi.

Di chuyển con trỏ về cuối file

Nếu các file không tồn tại, nó sẽ cố gắng tạo ra một file.

Đọc tệp - fread()

Cú pháp:

    fread($myfile,filesize("webdictionary.txt"));

Tham số đầu tiên của fread () chứa tên của tệp tin để đọc và tham số thứ hai xác định số byte tối đa để đọc.

Đóng tệp - fclose()

Sử dụng flose để đóng tập tin khi ta đã thao tác xong để tránh trường hợp chiếm dụng tài nguyên

Cú pháp:

    fclose($myfile);

Ví dụ ta có tệp văn bản "webdictionary.txt" có nội dung như sau:

    AJAX = Asynchronous JavaScript and XML
    CSS = Cascading Style Sheets
    HTML = Hyper Text Markup Language
    PHP = PHP Hypertext Preprocessor
    SQL = Structured Query Language
    SVG = Scalable Vector Graphics
    XML = EXtensible Markup Language

Sử dụng fopen để mở tệp tin, fread để đọc dữ liệu trong tệp tin, fclose để đóng tệp tin

    $myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");
    echo fread($myfile,filesize("webdictionary.txt"));
    fclose($myfile);

Kết quả trả về:

    AJAX = Asynchronous JavaScript and XML CSS = Cascading Style Sheets HTML = Hyper Text Markup Language PHP = PHP Hypertext Preprocessor SQL = Structured Query Language SVG = Scalable Vector Graphics XML = EXtensible Markup Language

Đọc 1 dòng - fgets()

Hàm fgets () được sử dụng để đọc một dòng từ một tệp.

Ví dụ:

    $myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");
    echo fgets($myfile);
    fclose($myfile);

Kết quả trả về:

    AJAX = Asynchronous JavaScript and XML

Check End-Of-File - feof()

Hàm feof() kiểm tra xem đã đọc đến cuối file hay chưa.

Hàm feof () hữu ích cho việc lặp lại dữ liệu có độ dài không xác định.

Ví dụ:

    $myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");
    // Output one line until end-of-file
    while(!feof($myfile)) {
      echo fgets($myfile) . "
"; } fclose($myfile);

Kết quả trả về:

    AJAX = Asynchronous JavaScript and XML
    CSS = Cascading Style Sheets
    HTML = Hyper Text Markup Language
    PHP = PHP Hypertext Preprocessor
    SQL = Structured Query Language
    SVG = Scalable Vector Graphics
    XML = EXtensible Markup Language