Heim > Artikel > Backend-Entwicklung > Warum liefert die PHP-Funktion readdir bei jeder Ausführung unterschiedliche Ergebnisse?
<code><?php $path = dirname(__FILE__); $dir = opendir($path); while($file = readdir($dir)) { echo "$file\n"; }</code>
Der Code ist wie oben:
Es gibt zwei Ausführungsergebnisse.
Der erste Typ
Der zweite Typ
Kann diese Funktion von PHP 5.6 in einer Win7-Umgebung normal in einer Linux-Umgebung ausgeführt werden?
<code><?php $path = dirname(__FILE__); $dir = opendir($path); while($file = readdir($dir)) { echo "$file\n"; }</code>
Der Code ist wie oben:
Es gibt zwei Ausführungsergebnisse.
Der erste Typ
Der zweite Typ
Kann diese Funktion von PHP 5.6 in einer Win7-Umgebung normal in einer Linux-Umgebung ausgeführt werden?
Siehe das offizielle PHP-Dokument
<code>$path = dirname(__FILE__); $dir = opendir($path); while(false!==($file = readdir($dir))) { echo "$file\n"; }</code>
Dies ist die korrekte Schreibweise, mit beigefügter offizieller Dokumentation
<code>使用readdir函数成功则返回文件名 或者在失败时返回 FALSE </code>
<code>此函数可能返回布尔值 FALSE,但也可能返回等同于 FALSE 的非布尔值。 请阅读 布尔类型章节以获取更多信息。应使用 === 运算符来测试此函数的返回值。 </code>
Überprüfen Sie, ob Sie eine Datei oder ein Verzeichnis mit dem Namen 0 haben?
Berechtigungsproblem... Der Prozessbenutzer sollte PHP oder Apache sein, nicht Ihr Anmeldekonto.