ฟังก์ชัน readdir
ฟังก์ชัน readdir อ่านเนื้อหาของไดเรกทอรีที่เปิดด้วย opendir ในแต่ละครั้งที่เรียกใช้จะส่งคืนชื่อไฟล์ถัดไป หรือ false หากไม่มีไฟล์เหลือแล้ว ฟังก์ชันจะเก็บตัวชี้ตำแหน่งภายในในไดเรกทอรี
ไวยากรณ์
readdir(resource $dir_handle): string|false
ตัวอย่าง
การอ่านไฟล์ทั้งหมดในไดเรกทอรี:
<?php
$dir = opendir('/path/to/directory');
while (($file = readdir($dir)) !== false) {
echo $file . '<br>';
}
closedir($dir);
?>
ผลลัพธ์การทำงานของโค้ด (ตัวอย่างการแสดงผล):
"file1.txt"
"file2.jpg"
"subdirectory"
ตัวอย่าง
การกรองรายการพิเศษ '.' และ '..':
<?php
$dir = opendir('.');
while (($file = readdir($dir)) !== false) {
if ($file != '.' && $file != '..') {
echo $file . '<br>';
}
}
closedir($dir);
?>
ผลลัพธ์การทำงานของโค้ด (แสดงผลเฉพาะไฟล์และไดเรกทอย์ย่อยจริง):
'index.php'
'styles.css'
'images'
ตัวอย่าง
การเก็บรวบรวมไฟล์ทั้งหมดลงในอาร์เรย์:
<?php
$files = [];
if ($handle = opendir('/path/to/dir')) {
while (false !== ($entry = readdir($handle))) {
if ($entry != '.' && $entry != '..') {
$files[] = $entry;
}
}
closedir($handle);
}
print_r($files);
?>
ผลลัพธ์การทำงานของโค้ด:
Array
(
[0] => "document.pdf"
[1] => "image.png"
[2] => "data.json"
)