首頁 > 後端開發 > php教程 > 為什麼在使用 readdir() 時我的 PHP 程式碼回傳「1」而不是檔名?

為什麼在使用 readdir() 時我的 PHP 程式碼回傳「1」而不是檔名?

Mary-Kate Olsen
發布: 2024-12-05 10:18:16
原創
767 人瀏覽過

Why Does My PHP Code Return

使用PHP 取得目錄中的檔案名稱:解「1」難題

在PHP 中,取得目錄中的檔案名稱是目錄中的檔案名稱經常遇到的任務。但是,有些人可能會遇到意外問題,即檔案名稱返回為“1”而不是其實際名稱。將 readdir() 函數與 is_dir() 和 opendir() 一起使用時,可能會出現此難題。

代碼:

問題:

迭代$results_array 的元素時,期望的檔案不傳回名稱。相反,它們被替換為“1”。此行為是由於與 readdir() 工作原理相關的微妙細節造成的。

解決方案:

要修正此問題,建議繞過 opendir()和 readdir() 並使用 glob() 取代。 glob() 是一個綜合函數,為提取目錄中的檔案名稱提供了強大的解決方案。

修正的程式碼:

在此修改後的程式碼中, glob() 用於遍歷 $log_directory 中的文件,傳回它們的路徑。隨後,每個檔案路徑都被分配給 $file 變量,以便進一步處理或利用。

這種方法規避了 readdir() 的限制並提供了所需的結果 - 實際文件名的列表,而不是“1” '.

以上是為什麼在使用 readdir() 時我的 PHP 程式碼回傳「1」而不是檔名?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板