当前位置: 编程技术>php
本页文章导读:
▪php目录遍历与删除的代码一例 主要功能如下:
遍历该文件夹下的文件,目录子目录,读取当前文件下目录和文件,删除当前文件夹下的目录子目录以及文件。
说明:暂不支持中文目录。
<?php
header("Content-type:text/html;.........
▪php递归遍历目录的二个函数 借助php内置函数glob、is_dir、dir实现。
<?php
/**
* 函数1
* 递归遍历目录
* site www.
*/
function myscandir($pathname){
foreach( glob($pathname) as $filename ){
if(is_dir($filename)){
.........
▪php遍历目录下所有文件的函数 方法1,使用dir返回对象。
方法2,使用readdir()函数。
以下是完整代码:
<?php
/**
* 目录递归函数 dir返回对象
* site www.
*/
function tree($directory)
{
$mydir = dir($directory);
echo "<ul>\n";
.........
[1]php目录遍历与删除的代码一例
来源: 互联网 发布时间: 2013-12-24
主要功能如下:
遍历该文件夹下的文件,目录子目录,读取当前文件下目录和文件,删除当前文件夹下的目录子目录以及文件。
说明:暂不支持中文目录。
<?php header("Content-type:text/html;charset=utf-8"); /** * 读取当前目录下的文件和目录 * * @param string $path 路径 * @return array 所有满足条件的文件 */ function tlist($path){ $path = iconv('utf-8', 'gbk', $path); if(!is_dir($path)){ throw new Exception($path."不是目录"); } $arr = array('dir'=>array(),'file'=>array()); $hd = opendir($path); while(($file = readdir($hd))!==false){ if($file=="."||$file=="..") {continue;} if(is_dir($path."/".$file)){ $arr['dir'][] = iconv('gbk','utf-8',$file); }else if(is_file($path."/".$file)){ $arr['file'][] = iconv('gbk','utf-8',$file); } } closedir($hd); echo "目录有:".implode("<br />",$arr['dir'])."<br />"; echo "文件有:".implode("<br />",$arr['file']); } /** * 遍历当前目录下的文件和目录以及子文件夹中目录 * * @param string $path 路径 * @return array 所有满足条件的文件 */ function blist($path){ if(!is_dir(iconv("utf-8","gbk",$path))){ throw new Exception("文件夹".$path."不存在或者不是文件"); } $arr = array(); $hd = opendir(iconv("utf-8","gbk",$path)); while(($file = readdir($hd))!==false){ if($file=="."||$file=="..") {continue;} $newpath=iconv('utf-8', 'gbk', $path) .'/'.$file; if(is_dir($newpath)){ $arr[] = blist($path."/".$file); }else if(is_file($newpath)){ $arr[] = iconv('gbk','utf-8',$file); } } closedir($hd); return $arr; } /**by http://www. * 删除目录下的文件以及子目录 * #param string $path 路径 * #return string 删除成功返回true 失败返回false; */ function dirDel($path){ if(!is_dir($path)){ throw new Exception($path."输入的不是有效目录"); } $hand = opendir($path); while(($file = readdir($hand))!==false){ if($file=="."||$file=="..") continue; if(is_dir($path."/".$file)){ dirDel($path."/".$file); }else{ @unlink($path."/".$file); } } closedir($hand); @rmdir($path); } ?>您可能感兴趣的文章:
Php删除指定文件与文件夹的方法
PHP删除N分钟前创建的所有文件的小例子
PHP实例:批量删除文件夹及文件夹中的文件
php删除目录及所有文件的方法举例
php 目录遍历与删除的函数示例
php rmdir删除目录的三种方法
删除指定文件夹中所有文件的php代码
删除多级目录的php自定义函数
php删除目录与列出目录下所有文件的代码
php递归删除文件与目录的代码
php递归删除目录及多级子目录下所有文件的代码
php递归创建和删除文件夹的代码
php递归删除目录的例子
[2]php递归遍历目录的二个函数
来源: 互联网 发布时间: 2013-12-24
借助php内置函数glob、is_dir、dir实现。
<?php /** * 函数1 * 递归遍历目录 * site www. */ function myscandir($pathname){ foreach( glob($pathname) as $filename ){ if(is_dir($filename)){ myscandir($filename.'/*'); }else{ echo $filename.'<br/>'; } } } myscandir('D:/wamp/www/exe1/*'); /** * 函数2 * 使用dir()函数 */ function myscandir($path){ $mydir=dir($path); while($file=$mydir->read()){ $p=$path.'/'.$file; if(($file!=".") AND ($file!="..")){ echo $p.'<br>'; } if((is_dir($p)) AND ($file!=".") AND ($file!="..")){ myscandir($p); } } } myscandir(dirname(dirname(__FILE__))); ?>
[3]php遍历目录下所有文件的函数
来源: 互联网 发布时间: 2013-12-24
方法1,使用dir返回对象。
方法2,使用readdir()函数。
以下是完整代码:
<?php /** * 目录递归函数 dir返回对象 * site www. */ function tree($directory) { $mydir = dir($directory); echo "<ul>\n"; while($file = $mydir->read()) { if((is_dir("$directory/$file")) AND ($file!=".") AND ($file!="..")) { echo "<li><font color=\"#ff00cc\"><b>$file</b></font></li>\n"; tree("$directory/$file"); } else echo "<li>$file</li>\n"; } echo "</ul>\n"; $mydir->close(); } //开始运行 echo "<h2>目录为粉红色</h2><br>\n"; tree("./"); /** * 方法2 用readdir()函数 */ function listDir($dir) { if(is_dir($dir)) { if ($dh = opendir($dir)) { while (($file = readdir($dh)) !== false) { if((is_dir($dir."/".$file)) && $file!="." && $file!="..") { echo "<b><font color='red'>文件名:</font></b>",$file,"<br><hr>"; listDir($dir."/".$file."/"); } else { if($file!="." && $file!="..") { echo $file."<br>"; } } } closedir($dh); } } } //开始运行 listDir("./"); ?>附,遍历目录下所有文件的代码。
<?php $num=0; //记录目录下的文件个数 $dirname='LAMP'; //要遍历的目录名字 $dir_handle=opendir($dirname); echo '<table border="1" align="center" width="960px" cellspacing="0" cellpadding="0">'; echo '<caption><h2>目录'.$dirname.'下面的内容</h2></caption>'; echo '<tr align="left" bgcolor="#cccccc">'; echo '<th>文件名</th><th>文件大小</th><th>文件类型</th><th>修改时间</th></tr>'; while($file=readdir($dir_handle)) { if($file!="."&&$file!="..") { $dirFile=$dirname."/".$file; if($num++%2==0) //隔行换色 $bgcolor="#ffffff"; else $bgcolor="#cccccc"; echo '<tr bgcolor='.$bgcolor.'>'; echo '<td>'.$file.'</td>'; echo '<td>'.filesize($dirFile).'</td>'; echo '<td>'.filetype($dirFile).'</td>'; echo '<td>'.date("Y/n/t",filemtime($dirFile)).'</td>'; echo '</tr>'; } } echo '</table>'; closedir($dir_handle); echo '在<b>'.$dirname.'</b>目录下的子目录和文件共有<b>'.$num.'</b>个'; ?>
最新技术文章: