務必注意,`rewinddir()` 並非僅僅從「相同」目錄列表的開頭重新開始。相反地,此函數會先重新讀取目錄——因此,自原始 `opendir()` 後刪除(或插入)的任何檔案都會在「回繞」後反映出來。
在這方面,`rewinddir()` 等同於 `closedir()`、`opendir()` 序列,但不獲取新的控制代碼。
(PHP 4, PHP 5, PHP 7, PHP 8)
rewinddir — 重設目錄控制代碼
不返回任何值。
版本 | 說明 |
---|---|
8.0.0 |
dir_handle 現在可以為 null。 |
務必注意,`rewinddir()` 並非僅僅從「相同」目錄列表的開頭重新開始。相反地,此函數會先重新讀取目錄——因此,自原始 `opendir()` 後刪除(或插入)的任何檔案都會在「回繞」後反映出來。
在這方面,`rewinddir()` 等同於 `closedir()`、`opendir()` 序列,但不獲取新的控制代碼。
/* 原始碼 */
<?php
$dir = "/images/";
// 開啟目錄並讀取其內容
if (is_dir($dir)){
if ($dh = opendir($dir)){
// 列出 images 目錄中的檔案
while (($file = readdir($dh)) !== false){
echo "filename:" . $file . "<br>";
}
rewinddir();
// 再次列出 images 目錄中的檔案
while (($file = readdir($dh)) !== false){
echo "filename:" . $file . "<br>";
}
closedir($dh);
}
}
?>
/* 結果 */
filename: cat.gif
filename: dog.gif
filename: horse.gif
filename: cat.gif
filename: dog.gif
filename: horse.gif