PHP 遍历文件实现代码

 更新时间:2011年05月04日 01:05:28   作者:  
小笔记, PHP 遍历所有文件, 包括子目录中的文件. 和压缩文件的类结合起来的话, 就可以打包整个目录了.
复制代码 代码如下:

function Files($path)
{
foreach(scandir($path) as $line)
{
if($line=='.'||$line=='..') continue;
if(is_dir($path.'/'.$line)) Files($path.'/'.$line);
else echo '<li>'.$path.'/'.$line.'</li>';
}
}

PHP遍历文件及文件夹
加入给定文件夹 C:\\Windows\\AppPatch
1.首先获取这个文件夹下面的所有东西,也就是文件,文件夹,放一个数组里面
$fileArr = array(
'files' => array(), //文件放一个数组
'dirs' => array(), //文件夹放一个数组
)
2.如果存在子文件夹,遍历子文件夹,获取文件夹和文件,同样放进那个数组,如此循环,一个不漏
复制代码 代码如下:

<?php
$dir = 'F:\\game';
function read_dir_all($dir) {
$ret = array('dirs'=>array(), 'files'=>array());
if ($handle = opendir($dir)) {
while (false !== ($file = readdir($handle))) {
if($file != '.' && $file !== '..') {
$cur_path = $dir . DIRECTORY_SEPARATOR . $file;
if(is_dir($cur_path)) {
$ret['dirs'][$cur_path] = read_dir_all($cur_path);
} else {
$ret['files'][] = $cur_path;
}
}
}
closedir($handle);
}
return $ret;
}
$p = read_dir_all($dir);
echo '<pre>';
var_dump($p);
echo '</pre>';
?>

php遍历一个文件夹下的所有目录及文件
在面试中我们经常遇到这个题目:php遍历一个文件夹下的所有文件和子文件夹。
  这个题目有好多种解决方法。但大致思路都一样。采用递归。
复制代码 代码如下:

$path = './filepath';
function getfiles($path)
{
if(!is_dir($path)) return;
$handle = opendir($path);
while( false !== ($file = readdir($handle)))
{
if($file != '.' &amp;&amp; $file!='..')
{
$path2= $path.'/'.$file;
if(is_dir($path2))
{
echo ' ';
echo $file;
getfiles($path2);
}else
{
echo ' ';
echo $file;
}
}
}
}
print_r( getfiles($path));
echo '<HR>';
function getdir($path)
{
if(!is_dir($path)) return;
$handle = dir($path);
while($file=$handle-&gt;read())
{
if($file!='.' &amp;&amp; $file!='..')
{
$path2 = $path.'/'.$file;
if(is_dir($path2))
{
echo $file."\t";
getdir($path2);
}else
{
echo $file.' ';
}
}
}
}
getdir($path);
echo '<HR>';
function get_dir_scandir($path){
$tree = array();
foreach(scandir($path) as $single){
if($single!='.' &amp;&amp; $single!='..')
{
$path2 = $path.'/'.$single;
if(is_dir($path2))
{
echo $single."\r\n";
get_dir_scandir($path2);
}else
{
echo $single."\r\n";
}
}
}
}
get_dir_scandir($path);
echo '
<HR>';
function get_dir_glob(){
$tree = array();
foreach(glob('./curl/*') as $single){
echo $single."\r\n";
}
}
get_dir_glob();
echo '
<HR>';
function myscandir($path)
{
if(!is_dir($path)) return;
foreach(scandir($path) as $file)
{
if($file!='.' &amp;&amp; $file!='..')
{
$path2= $path.'/'.$file;
if(is_dir($path2))
{
echo $file;
myscandir($path2);
}else
{
echo $file.' ';
}
}
}
}
myscandir($path);
echo '<HR>';
function myglob($path)
{
$path_pattern = $path.'/*';
foreach(glob($path_pattern) as $file)
{
if(is_dir($file))
{
echo $file;
myscandir($file);
}else
{
echo $file.' ';
}
}
}
myglob($path);

相关文章

  • PHP使用glob函数遍历目录或文件夹的方法

    PHP使用glob函数遍历目录或文件夹的方法

    这篇文章主要介绍了PHP使用glob函数遍历目录或文件夹的方法,对比分析了使用glob函数遍历目录的优点,非常具有实用价值,需要的朋友可以参考下
    2014-12-12
  • PHP之Swoole学习安装教程

    PHP之Swoole学习安装教程

    这篇文章主要介绍了PHP之Swoole学习安装教程,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-09-09
  • php回溯算法计算组合总和的实例代码

    php回溯算法计算组合总和的实例代码

    在本篇文章里小编给大家整理的是一篇关于php回溯算法计算组合总和的实例代码,有需要的朋友们可以学习参考下。
    2021-07-07
  • php无限极分类实现方法分析

    php无限极分类实现方法分析

    这篇文章主要介绍了php无限极分类实现方法,结合实例形式分析了两种无限极分类的具体实现技巧与相关注意事项,需要的朋友可以参考下
    2019-07-07
  • PHP 多维数组排序实现代码

    PHP 多维数组排序实现代码

    PHP 多维数组排序实现代码,需要的朋友可以参考下。
    2009-08-08
  • php指定长度分割字符串str_split函数用法示例

    php指定长度分割字符串str_split函数用法示例

    这篇文章主要介绍了php指定长度分割字符串str_split函数用法,结合实例形式分析了str_split函数分割字符串的具体操作技巧,需要的朋友可以参考下
    2017-01-01
  • PHP实现的限制IP投票程序IP来源分析

    PHP实现的限制IP投票程序IP来源分析

    这篇文章主要介绍了PHP实现的限制IP投票程序,针对投票程序中客户端IP的判断方法进行了深入分析,并给出了伪造IP的方法供大家参考了解,需要的朋友可以参考下
    2016-05-05
  • PHP pthreads v3在centos7平台下的安装与配置操作方法

    PHP pthreads v3在centos7平台下的安装与配置操作方法

    这篇文章主要介绍了PHP pthreads v3在centos7平台下的安装与配置操作方法,结合图文与实例形式分析了PHP pthreads v3在centos7平台下的安装与配置操作具体步骤、相关命令与注意事项,需要的朋友可以参考下
    2020-02-02
  • PHP中set_include_path()函数相关用法分析

    PHP中set_include_path()函数相关用法分析

    这篇文章主要介绍了PHP中set_include_path()函数相关用法,结合实例形式分析了php针对文件路径设置的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2016-07-07
  • PHP如何从txt文件中读取数据详解

    PHP如何从txt文件中读取数据详解

    这篇文章主要给大家介绍了关于PHP如何从txt文件中读取数据的相关资料,文中通过实例代码以及图文介绍的非常详细,对大家学习或者使用PHP具有一定的参考学习价值,需要的朋友可以参考下
    2022-03-03

最新评论