Heim  >  Artikel  >  Backend-Entwicklung  >  Warum liefert die PHP-Funktion readdir bei jeder Ausführung unterschiedliche Ergebnisse?

Warum liefert die PHP-Funktion readdir bei jeder Ausführung unterschiedliche Ergebnisse?

WBOY
WBOYOriginal
2016-08-04 09:20:59998Durchsuche

<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
Warum liefert die PHP-Funktion readdir bei jeder Ausführung unterschiedliche Ergebnisse?
Der zweite Typ

Warum liefert die PHP-Funktion readdir bei jeder Ausführung unterschiedliche Ergebnisse?
Kann diese Funktion von PHP 5.6 in einer Win7-Umgebung normal in einer Linux-Umgebung ausgeführt werden?

Antwortinhalt:

<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
Warum liefert die PHP-Funktion readdir bei jeder Ausführung unterschiedliche Ergebnisse?
Der zweite Typ

Warum liefert die PHP-Funktion readdir bei jeder Ausführung unterschiedliche Ergebnisse?
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>

Aber Sie sollten besonders vorsichtig sein:: Warnung

<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.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn