源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

php目录操作实例代码

  • 时间:2022-05-25 06:13 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:php目录操作实例代码
[u]复制代码[/u] 代码如下:
<?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);
核心:递归的经典应用,以及文件和目录的基本操作。
[u]复制代码[/u] 代码如下:
<?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函数。
[u]复制代码[/u] 代码如下:
<?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。
[u]复制代码[/u] 代码如下:
<?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在哪里返回,理解递归函数。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部