天天看点

PHP递归遍历文件夹

<code>&lt;?php</code>

<code>function</code> <code>get_files(</code><code>$dir</code><code>) {</code>

<code>    </code><code>$files</code> <code>= </code><code>array</code><code>();</code>

<code>    </code><code>if</code><code>(!</code><code>is_dir</code><code>(</code><code>$dir</code><code>)) {</code>

<code>        </code><code>return</code> <code>$files</code><code>;</code>

<code>    </code><code>}</code>

<code>    </code><code>$handle</code> <code>= opendir(</code><code>$dir</code><code>);</code>

<code>    </code><code>if</code><code>(</code><code>$handle</code><code>) {</code>

<code>        </code><code>while</code><code>(false !== (</code><code>$file</code> <code>= readdir(</code><code>$handle</code><code>))) {</code>

<code>            </code><code>if</code> <code>(</code><code>$file</code> <code>!= </code><code>'.'</code> <code>&amp;&amp; </code><code>$file</code> <code>!= </code><code>'..'</code><code>) {</code>

<code>                </code><code>$filename</code> <code>= </code><code>$dir</code> <code>. </code><code>"/"</code>  <code>. </code><code>$file</code><code>;</code>

<code>                </code><code>if</code><code>(</code><code>is_file</code><code>(</code><code>$filename</code><code>)) {</code>

<code>                    </code><code>if</code><code>(preg_match(</code><code>'/.*\.php$/'</code><code>,</code><code>$filename</code><code>)){</code>

<code>                        </code><code>$files</code><code>[] = </code><code>$filename</code><code>;</code>

<code>                    </code><code>}</code>

<code>                </code><code>}</code><code>else</code> <code>{</code>

<code>                    </code><code>$files</code> <code>= </code><code>array_merge</code><code>(</code><code>$files</code><code>, get_files(</code><code>$filename</code><code>));</code>

<code>                </code><code>}</code>

<code>            </code><code>}</code>

<code>        </code><code>}   </code><code>//  end while</code>

<code>        </code><code>closedir</code><code>(</code><code>$handle</code><code>);</code>

<code>    </code><code>return</code> <code>$files</code><code>;</code>

<code>}</code>

<code></code>

http://blog.51cto.com/12173069/1983237

本文转自 Lee_吉  博客,原文链接:    http://blog.51cto.com/12173069/1983237    如需转载请自行联系原作者