<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// これは記事の内容とは関係ありませんPHPコードの例,初期化を配置できます、構成およびその他のコンテンツ</span></span><span>
</span><span><span class="hljs-comment">// 例えば,タイムゾーンを設定します</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 rewinddirそしてreaddir関数を使用してディレクトリの内容を効率的に読み取る方法?</h2>
<p>存在するPHP真ん中,オペレーティングディレクトリコンテンツの場合,一般的に使用される関数には含まれます <code></span><span><span class="hljs-title function_ invoke__">opendir</span></span><span>()
rewinddir()は、ディレクトリのハンドルポインターをディレクトリの先頭にリポートします。つまり、ディレクトリの最後まで読んだが、もう一度ゼロから移動したいときにこの関数を呼び出すことができます。
実際のアプリケーションでは、条件を満たす最初のフィルタリングファイルなど、同じディレクトリのコンテンツを複数回読み取ってからさらに処理する必要がある場合があります。現時点では、 rewinddir()を使用すると、Opendir()への繰り返しの呼び出しを回避し、効率を向上させることができます。
</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">// 最初のトラバーサル:すべてのファイルを読み取ります,すべてを見つけてください.php書類</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">// ディレクトリの先頭に戻ります,2番目のトラバーサルを実行します(必要に応じて)</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">// 2番目のトラバーサル:打印所有書類名,デモの使用rewinddir</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">"書類名: <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>);
RewindDir()とReadDir()の合理的な協力により、PHPプログラムは、ディレクトリのコンテンツを効率的かつ柔軟に読み取り、リソースの消費を削減し、コードの保守性とパフォーマンスを向上させることができます。