php实现文件遍历,php ---- 文件遍历

转自 RIPS ---- [./lib/filer.php] -----sourceforge.net/projects/rips-scanner/

// filetypes you want to search

$FILETYPES = array(

// filetypes to scan

'.php',

'.inc',

'.phps',

'.php4',

'.php5',

//'.html',

//'.htm',

//'.txt',

'.phtml',

'.tpl',

'.cgi'

);

// get all php files from directory, including all subdirectories

function read_recursiv($path, $scan_subdirs)

{

$result = array();

$handle = opendir($path);

if ($handle)

{

// readdir -- 此函数可能返回布尔值 FALSE,但也可能返回等同于 FALSE 的非布尔值。

while (false !== ($file = readdir($handle)))

{

if ($file !== '.' && $file !== '..')

{

$name = $path . '/' . $file;

if (is_dir($name) && $scan_subdirs)

{

$ar = read_recursiv($name, true);

foreach ($ar as $value)

{

// string substr ( string $string , int $start [, int $length ] )

// strrpos ---- 计算指定字符串在目标字符串中最后一次出现的位置

// in_array ----

if(in_array(substr($value, strrpos($value, ".")), $GLOBALS['FILETYPES']))

{

// Append the filepath to the result array

$result[] = $value;

}

}

} else if (in_array(substr($name, strrpos($name, '.')), $GLOBALS['FILETYPES']))

{

$result[] = $name;

}

}

}

}

closedir($handle);

return $result;

}

$files = (read_recursiv("/var/www/rips/",1));

foreach ($files as $file)

{

echo $file."\n
";

}

?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值