首頁 > 後端開發 > php教程 > 為什麼PHP readdir函數每次執行結果不一樣?

為什麼PHP readdir函數每次執行結果不一樣?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
發布: 2016-08-04 09:20:59
原創
1036 人瀏覽過

<code><?php 
    $path = dirname(__FILE__);
    $dir = opendir($path);
    while($file = readdir($dir))
    {
        echo "$file\n";
    }</code>
登入後複製
登入後複製

程式碼如上:
有兩種執行結果。
第一種
為什麼PHP readdir函數每次執行結果不一樣?
第二種

為什麼PHP readdir函數每次執行結果不一樣?
是win7環境下,php 5.6這個函數linux環境才可以正常執行的嗎?

回覆內容:

<code><?php 
    $path = dirname(__FILE__);
    $dir = opendir($path);
    while($file = readdir($dir))
    {
        echo "$file\n";
    }</code>
登入後複製
登入後複製

程式碼如上:
有兩種執行結果。
第一種
為什麼PHP readdir函數每次執行結果不一樣?
第二種

為什麼PHP readdir函數每次執行結果不一樣?
是win7環境下,php 5.6這個函數linux環境才可以正常執行的嗎?

參考php官司方文件

<code>$path = dirname(__FILE__);
$dir = opendir($path);
while(false!==($file = readdir($dir)))
{
    echo "$file\n";
}</code>
登入後複製

你應該這樣寫才是正確方式,附官方文件說明

<code>使用readdir函数成功则返回文件名 或者在失败时返回 FALSE

</code>
登入後複製

但要特別當心::Warning

<code>此函数可能返回布尔值 FALSE,但也可能返回等同于 FALSE 的非布尔值。
请阅读 布尔类型章节以获取更多信息。应使用 === 运算符来测试此函数的返回值。
</code>
登入後複製

你看看你是不是有個檔案或目錄名叫 0 ?

權限問題吧...進程使用者應該是PHP或Apache,而不是你的登入帳號。

相關標籤:
php
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
怎麼學好php
來自於 1970-01-01 08:00:00
0
0
0
PHP擴充intl
來自於 1970-01-01 08:00:00
0
0
0
php數據獲取?
來自於 1970-01-01 08:00:00
0
0
0
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板