微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!
php列出一个目录下的所有文件的代码
<div class="codetitle"><a style="CURSOR: pointer" data="77441" class="copybut" id="copybut77441" onclick="doCopy('code77441')"> 代码如下:
<div class="codebody" id="code77441">
<?
PHP function dir_path($path) {
$path = str_replace('\','/',$path);
if (substr($path,-1) != '/') $path = $path . '/';
return $path;
}
/*
列出目录下的所有
文件
@p
aram str $path 目录
@param str $exts 后缀
@p
aram array $list 路径数组
@return array 返回路径数组
/
function dir_list($path,$exts = '',$list = array()) {
$path = dir_path($path);
$files = glob($path . '
');
foreach($files as $v) {
if (!$exts || preg_match("/.($exts)/i",$v)) {
$list[] = $v;
if (is_dir($v)) {
$list = dir_list($v,$exts,$list);
}
}
}
return $list;
}
?>
使用
方法:
<div class="codetitle">
<a style="CURSOR: pointer" data="69155" class="copybut" id="copybut69155" onclick="doCopy('code69155')"> 代码如下: <div class="codebody" id="code69155">
<?
PHP $r = dir_list('dir');
printf("
输出数据为:
%s
\n",var_export($r,true));
?>
采用
PHP编写的
函数,用来列出指定目录下的所有的
文件。
函数后面带有
一个使用的示例
代码。
注意:如果
页面是utf-8的,在window
中文版本的系统中,读取
中文的
文件名的时候会出现乱码。
<div class="codetitle">
<a style="CURSOR: pointer" data="47128" class="copybut" id="copybut47128" onclick="doCopy('code47128')"> 代码如下: <div class="codebody" id="code47128">
<?
PHP /
函数 listDirTree( $dirName = null )
功能 列出目录下所有文件及子目录
参数 $dirName 目录
名称 *
返回 目录结构数组 false为失败
/
function listDirTree( $dirName = null )
{
if( empty( $dirName ) )
exit( "IBFileSy
stem: directory is empty." );
if( is_dir( $dirName ) )
{
if( $dh = opendir( $dirName ) )
{
$tree = array();
while( ( $file = readdir( $dh ) ) !== false )
{
if( $file != "." && $file != ".." )
{
$filePath = $dirName . "/" . $file;
if( is_dir( $filePath ) ) //为目录,递归
{
$tree[$file] = listDirTree( $filePath );
}
else //为
文件,
添加到当前数组
{
$tree[] = $file;
}
}
}
closedir( $dh );
}
else
{
exit( "IBFileSy
stem: can not open directory $dirName.");
}
//返回当前的$tree
return $tree;
}
else
{
exit( "IBFileSy
stem: $dirName is not a directory.");
}
}
$files = listDirTree(".");
//print_r($files);
$size = count(files);
//以下
代码是创建
一个本目录下
文件的列表(带有
链接地址)
echo '
';
for( $i=0; $files[$i] != NULL; $i++ ) {
echo '- <a href="'.($files[$i]).'" target="_blank">'.$files[$i].'
';
}
echo '
';
?>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。