php目录操作实例代码


Posted in PHP onFebruary 21, 2014
<?php 
    /**
    * listdir
    */
    header("content-type:text/html;charset=utf-8");
    $dirname = "./final/factapplication";
    function listdir($dirname) {
        $ds = opendir($dirname);
        while (false !== ($file = readdir($ds))) {
            $path = $dirname.'/'.$file;
            if ($file != '.' && $file != '..') {
                if (is_dir($path)) {
                    listdir($path);
                } else {
                    echo $file."<br>";
                }
            }
        }
        closedir($ds);
    }
    listdir($dirname);

核心:递归的经典应用,以及文件和目录的基本操作。

<?php
    /**
    * copydir
    */
    $srcdir = "../fileupload";
    $dstdir = "b";
    function copydir($srcdir, $dstdir) {
        mkdir($dstdir);
        $ds = opendir($srcdir);
        while (false !== ($file = readdir($ds))) {
            $path = $srcdir."/".$file;
            $dstpath = $dstdir."/".$file;
            if ($file != "." && $file != "..") {
                if (is_dir($path)) {
                    copydir($path, $dstpath);
                } else {
                    copy($path, $dstpath);
                }
            }
        }
        closedir($ds);
    }
    copydir($srcdir, $dstdir);

核心:copy函数。

<?php
    /**
    * deldir
    */
    $dirname = 'a';
    function deldir($dirname) {
        $ds = opendir($dirname);
        while (false !== ($file = readdir($ds))) {
            $path = $dirname.'/'.$file;
            if($file != '.' && $file != '..') {
                if (is_dir($path)) {
                    deldir($path);
                } else {
                    unlink($path);
                }
            }
        }
        closedir($ds);
        return rmdir($dirname);
    }
    deldir($dirname);

核心:注意unlink删除的是带path的file。

<?php
    /**
    * dirsize
    */
    $dirname = "a";
    function dirsize($dirname) {
        static $tot;
        $ds = opendir($dirname);
        while (false !== ($file = readdir($ds))) {
            $path = $dirname.'/'.$file;
            if ($file != '.' && $file != '..') {
                if(is_dir($path)) {
                    dirsize($path);
                } else {
                    $tot = $tot + filesize($path);
                }
            }
        }
        return $tot;
        closedir($ds);
    }
    echo dirsize($dirname);

核心:通过判断$tot在哪里返回,理解递归函数。
PHP 相关文章推荐
一些php技巧与注意事项分析
Feb 03 PHP
分享一个PHP数据流应用的简单例子
Jun 01 PHP
PHP imagegrabscreen和imagegrabwindow(截取网站缩略图)的实例代码
Nov 07 PHP
浅析php创建者模式
Nov 25 PHP
php数组使用规则分析
Feb 27 PHP
使用PHP生成图片的缩略图的方法
Aug 18 PHP
Apache无法自动跳转却显示目录的解决方法
Nov 30 PHP
php生成复杂验证码(倾斜,正弦干扰线,黏贴,旋转)
Mar 12 PHP
Laravel5框架添加自定义辅助函数的方法
Aug 01 PHP
PDO::commit讲解
Jan 27 PHP
浅谈PHP array_search 和 in_array 函数效率问题
Oct 15 PHP
Yii框架布局文件的动态切换操作示例
Nov 11 PHP
php无限遍历目录示例
Feb 21 #PHP
php自动加载autoload机制示例分享
Feb 20 #PHP
php多文件上传下载示例分享
Feb 20 #PHP
php分页代码学习示例分享
Feb 20 #PHP
php多文件上传实现代码
Feb 20 #PHP
php图片缩放实现方法
Feb 20 #PHP
php跨域cookie共享使用方法
Feb 20 #PHP
You might like
用文本作数据处理
2006/10/09 PHP
php限制ip地址范围的方法
2015/03/31 PHP
php 无限级分类 获取顶级分类ID
2016/03/13 PHP
php登录超时检测功能实例详解
2017/03/21 PHP
PHP高精确度运算BC函数库实例详解
2017/08/15 PHP
总结PHP内存释放以及垃圾回收
2018/03/29 PHP
深入学习微信网址链接解封的防封原理visit_type
2019/08/15 PHP
Jquery获得控件值的三种方法总结
2014/02/13 Javascript
javascript背景时钟实现方法
2015/06/18 Javascript
JavaScript数据库TaffyDB用法实例分析
2015/07/27 Javascript
JavaScript的jQuery库中function的存在和参数问题
2015/08/13 Javascript
JS实现具备延时功能的滑动门菜单效果
2015/09/17 Javascript
JS图片懒加载技术实现过程解析
2020/07/27 Javascript
ES11屡试不爽的新特性,你用上了几个
2020/10/21 Javascript
python中argparse模块用法实例详解
2015/06/03 Python
基于python的图片修复程序(实现水印去除)
2018/06/04 Python
Python 编程速成(推荐)
2019/04/15 Python
对python中的os.getpid()和os.fork()函数详解
2019/08/08 Python
python安装virtualenv虚拟环境步骤图文详解
2019/09/18 Python
TensorFlow 显存使用机制详解
2020/02/03 Python
python+flask编写一个简单的登录接口
2020/11/13 Python
台湾旅游网站:雄狮旅游网
2017/08/16 全球购物
世界上最好的足球商店:Unisport
2019/03/02 全球购物
小学教师的个人自我鉴定
2013/10/24 职场文书
中餐厅主管的职责范文
2014/02/04 职场文书
《雨霖铃》听课反思
2014/02/13 职场文书
学习全国两会精神心得体会范文
2014/03/17 职场文书
财务负责人任命书
2014/06/06 职场文书
股指期货心得体会
2014/09/10 职场文书
2014年维修电工工作总结
2014/11/20 职场文书
营销计划书范文
2015/01/17 职场文书
助学感谢信范文
2015/01/21 职场文书
兴趣班停课通知
2015/04/24 职场文书
党支部意见范文
2015/06/02 职场文书
《女娲补天》读后感5篇
2019/12/31 职场文书
mysql字段为NULL索引是否会失效实例详解
2022/05/30 MySQL