<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// Dies hängt nicht mit dem Inhalt des Artikels zusammenPHPCodebeispiel,Die Initialisierung kann platziert werden、Konfiguration und andere Inhalte</span></span><span>
</span><span><span class="hljs-comment">// Zum Beispiel,Legen Sie die Zeitzone fest</span></span><span>
</span><span><span class="hljs-title function_ invoke__">date_default_timezone_set</span></span><span>(</span><span><span class="hljs-string">'Asia/Shanghai'</span></span><span>);
</span><span><span class="hljs-meta">?></span></span><span>
<hr>
<h2>PHP rewinddirUndreaddirSo verwenden Sie Funktionen, um den Verzeichnisgehalt effizient zu lesen?</h2>
<p>existierenPHPMitte,Beim Betrieb des Verzeichnisinhalts,Häufig verwendete Funktionen umfassen <code></span><span><span class="hljs-title function_ invoke__">opendir</span></span><span>()
rewinddir () repointiert den Verzeichnis den Zeiger zum Beginn des Verzeichnisses. Das heißt, Sie können diese Funktion aufrufen, wenn Sie bis zum Ende des Verzeichnisses gelesen haben, aber erneut von Grund auf neu durchqueren möchten.
In praktischen Anwendungen ist es manchmal erforderlich, den Inhalt desselben Verzeichnisses mehrmals zu lesen, z. Zu diesem Zeitpunkt kann die Verwendung von Rewinddir () wiederholte Aufrufe bei Opendir () vermeiden und die Effizienz verbessern.
</span><span><span class="hljs-variable">$dir</span></span><span> = </span><span><span class="hljs-title function_ invoke__">opendir</span></span><span>(</span><span><span class="hljs-string">'/path/to/dir'</span></span><span>);
</span><span><span class="hljs-comment">// Der erste Traversal:Lesen Sie alle Dateien,Finden Sie alles heraus.phpdokumentieren</span></span><span>
</span><span><span class="hljs-variable">$phpFiles</span></span><span> = [];
</span><span><span class="hljs-keyword">while</span></span><span> ((</span><span><span class="hljs-variable">$file</span></span><span> = </span><span><span class="hljs-title function_ invoke__">readdir</span></span><span>(</span><span><span class="hljs-variable">$dir</span></span><span>)) !== </span><span><span class="hljs-literal">false</span></span><span>) {
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">pathinfo</span></span><span>(</span><span><span class="hljs-variable">$file</span></span><span>, PATHINFO_EXTENSION) === </span><span><span class="hljs-string">'php'</span></span><span>) {
</span><span><span class="hljs-variable">$phpFiles</span></span><span>[] = </span><span><span class="hljs-variable">$file</span></span><span>;
}
}
</span><span><span class="hljs-comment">// Kehren Sie zum Beginn des Verzeichnisses zurück,Einen zweiten Traversal durchführen(Bei Bedarf)</span></span><span>
</span><span><span class="hljs-title function_ invoke__">rewinddir</span></span><span>(</span><span><span class="hljs-variable">$dir</span></span><span>);
</span><span><span class="hljs-comment">// Der zweite Traversal:打印所有dokumentieren名,Demo -Nutzungrewinddir</span></span><span>
</span><span><span class="hljs-keyword">while</span></span><span> ((</span><span><span class="hljs-variable">$file</span></span><span> = </span><span><span class="hljs-title function_ invoke__">readdir</span></span><span>(</span><span><span class="hljs-variable">$dir</span></span><span>)) !== </span><span><span class="hljs-literal">false</span></span><span>) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"dokumentieren名: <span class="hljs-subst">$file</span></span></span><span>\n";
}
</span><span><span class="hljs-title function_ invoke__">closedir</span></span><span>(</span><span><span class="hljs-variable">$dir</span></span><span>);
Durch die angemessene Zusammenarbeit von Rewinddir () und Readdir () können PHP -Programme effizient und flexibel das Verzeichnisinhalt lesen, den Ressourcenverbrauch reduzieren und die Wartbarkeit und Leistung von Code verbessern.