PHP 文件打開/讀取/關閉

在本節中,我們向您解釋如何在伺服器上打開、讀取以及關閉文件。

PHP 打開文件 - fopen()

打開文件的更好方法是通過 fopen() 函數。此函數為您提供比 readfile() 函數更多的選項。

在课程中,我們將使用文本文件 "webdictionary.txt":

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

ประกายแรกของ fopen() มีชื่อไฟล์ที่ต้องการเปิด และประกายที่สองกำหนดโมดูลที่ใช้เปิดไฟล์ ถ้า fopen() ฟังก์ชันไม่สามารถเปิดไฟล์ที่กำหนดไว้ ตัวอย่างดังนี้จะสร้างข้อความหนึ่ง:

ตัวอย่าง

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

สร้างตัวอย่างที่เรียก

คำเตือน:เราจะเรียนรู้ fread() และ fclose() ฟังก์ชันต่อไป...

ไฟล์จะถูกเปิดด้วยโมดูลดังนี้:

โมดูล การอธิบาย
r เปิดไฟล์เพื่ออ่านเท่านั้น ตัวบุหรี่จะอยู่ที่จุดเริ่มต้นของไฟล์。
w เปิดไฟล์เพื่อเขียนเท่านั้น ข้อมูลของไฟล์จะถูกลบหรือสร้างไฟล์ใหม่หากมันไม่มีอยู่ ตัวบุหรี่จะอยู่ที่จุดเริ่มต้นของไฟล์。
a เปิดไฟล์เพื่อเขียนเท่านั้น ข้อมูลที่มีอยู่ในไฟล์จะถูกคงเอง ตัวบุหรี่จะอยู่ที่จุดสิ้นสุดของไฟล์ สร้างไฟล์ใหม่หากมันไม่มีอยู่。
x สร้างไฟล์ใหม่เพื่อเขียนเท่านั้น กลับค่า FALSE และข้อผิดพลาด ถ้าไฟล์มีอยู่แล้ว。
r+ เปิดไฟล์เพื่ออ่าน/เขียน ตัวบุหรี่จะอยู่ที่จุดเริ่มต้นของไฟล์。
w+ เปิดไฟล์เพื่ออ่าน/เขียน ข้อมูลของไฟล์จะถูกลบหรือสร้างไฟล์ใหม่หากมันไม่มีอยู่ ตัวบุหรี่จะอยู่ที่จุดเริ่มต้นของไฟล์。
a+ เปิดไฟล์เพื่ออ่าน/เขียน ข้อมูลที่มีอยู่ในไฟล์จะถูกคงเอง ตัวบุหรี่จะอยู่ที่จุดสิ้นสุดของไฟล์ สร้างไฟล์ใหม่หากมันไม่มีอยู่。
x+ สร้างไฟล์ใหม่เพื่ออ่าน/เขียน กลับค่า FALSE และข้อผิดพลาด ถ้าไฟล์มีอยู่แล้ว。

PHP อ่านไฟล์ - fread()

fread() ฟังก์ชันอ่านไฟล์ที่เปิดแล้ว。

ประกายแรกของ fread() มีชื่อไฟล์ที่ต้องการอ่าน และประกายที่สองกำหนดจำนวนไบต์ที่ต้องการอ่านสูงสุด。

ตัวอย่าง PHP ดังนี้จะอ่านไฟล์ "webdictionary.txt" จนถึงท้ายของไฟล์:

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

PHP ปิดไฟล์ - fclose()

fclose() ฟังก์ชันใช้สำหรับปิดไฟล์ที่เปิดแล้ว。

หมายเหตุ:หลังจากใช้ไฟล์แล้ว ปิดทุกไฟล์เป็นเชิงโน้มที่ดีของการเขียนโปรแกรม。คุณไม่ต้องการให้ไฟล์ที่ยังไม่ได้ปิดใช้บริการของเซิร์ฟเวอร์ของคุณ。

fclose() ต้องการชื่อไฟล์ที่ต้องการปิด (หรือตัวแปรที่มีชื่อไฟล์):

<?php
$myfile = fopen("webdictionary.txt", "r");
// บรรทัดรหัสที่ต้องการที่จะปฏิบัติการ...
fclose($myfile);
?>

PHP อ่านบรรทัดเดียวจากไฟล์ - fgets()

ฟังก์ชัน fgets() ใช้สำหรับอ่านบรรทัดเดียวจากไฟล์。

ตัวอย่างการแสดงข้อมูลบรรทัดแรกของไฟล์ "webdictionary.txt"

ตัวอย่าง

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

สร้างตัวอย่างที่เรียก

หมายเหตุ:หลังจากเรียก fgets() ฟังก์ชัน ตัวบิตยานายจะเคลื่อนย้ายไปยังบรรทัดต่อไป

PHP ตรวจสอบ End-Of-File - feof()

feof() ฟังก์ชันตรวจสอบว่าเรียกข้อมูลถึง end-of-file (EOF) หรือไม่

feof() มีประโยชน์มากในการเลือกตั้งข้อมูลที่ไม่ทราบขนาด

ตัวอย่างด้านล่างนี้จะอ่านแฟ้ม "webdictionary.txt" ตามบรรทัดจนถึง end-of-file

ตัวอย่าง

<?php
$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");
// ออกแสดงบรรทัดจนถึง end-of-file
while(!feof($myfile)) {
  echo fgets($myfile) . "<br>";
}
fclose($myfile);
?>

สร้างตัวอย่างที่เรียก

PHP อ่านตัวอักษรเดียว - fgetc()

fgetc() ฟังก์ชันใช้ในการอ่านตัวอักษรเดียวจากแฟ้ม

ตัวอย่างด้านล่างนี้จะอ่านแฟ้ม "webdictionary.txt" ตามตัวอักษรจนถึง end-of-file

ตัวอย่าง

<?php
$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");
// ออกแสดงตัวอักษรเดียวจนถึง end-of-file
while(!feof($myfile)) {
  echo fgetc($myfile);
}
fclose($myfile);
?>

สร้างตัวอย่างที่เรียก

หมายเหตุ:หลังจากเรียก fgetc() ฟังก์ชัน ตัวบิตยานายจะเคลื่อนย้ายไปยังอักษรต่อไป

คู่มือฟังก์ชัน PHP Filesystem

ถ้าต้องการคู่มือฟังก์ชัน PHP Filesystem ที่สมบูรณ์ โปรดเข้าเว็บไซต์ CaseW3C.com ที่ให้โดย CaseW3C.com คู่มือฟังก์ชัน PHP Filesystem.