问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

php代码如何实现编辑文件和文件夹,删除已经实现了

发布网友 发布时间:2022-04-07 05:24

我来回答

1个回答

热心网友 时间:2022-04-07 06:53

可参考PhpCms V9:\phpcms\libs\functions\dir.func.php函数
函数代码如下:
<?php
/**
* 转化 \ 为 /
*
* @param string $path 路径
* @return string 路径
*/
function dir_path($path) {
$path = str_replace('\\', '/', $path);
if(substr($path, -1) != '/') $path = $path.'/';
return $path;
}
/**
* 创建目录
*
* @param string $path 路径
* @param string $mode 属性
* @return string 如果已经存在则返回true,否则为flase
*/
function dir_create($path, $mode = 0777) {
if(is_dir($path)) return TRUE;
$ftp_enable = 0;
$path = dir_path($path);
$temp = explode('/', $path);
$cur_dir = '';
$max = count($temp) - 1;
for($i=0; $i<$max; $i++) {
$cur_dir .= $temp[$i].'/';
if (@is_dir($cur_dir)) continue;
@mkdir($cur_dir, 0777,true);
@chmod($cur_dir, 0777);
}
return is_dir($path);
}
/**
* 拷贝目录及下面所有文件
*
* @param string $fromdir 原路径
* @param string $todir 目标路径
* @return string 如果目标路径不存在则返回false,否则为true
*/
function dir_copy($fromdir, $todir) {
$fromdir = dir_path($fromdir);
$todir = dir_path($todir);
if (!is_dir($fromdir)) return FALSE;
if (!is_dir($todir)) dir_create($todir);
$list = glob($fromdir.'*');
if (!empty($list)) {
foreach($list as $v) {
$path = $todir.basename($v);
if(is_dir($v)) {
dir_copy($v, $path);
} else {
copy($v, $path);
@chmod($path, 0777);
}
}
}
return TRUE;
}
/**
* 转换目录下面的所有文件编码格式
*
* @param string $in_charset 原字符集
* @param string $out_charset 目标字符集
* @param string $dir 目录地址
* @param string $fileexts 转换的文件格式
* @return string 如果原字符集和目标字符集相同则返回false,否则为true
*/
function dir_iconv($in_charset, $out_charset, $dir, $fileexts = 'php|html|htm|shtml|shtm|js|txt|xml') {
if($in_charset == $out_charset) return false;
$list = dir_list($dir);
foreach($list as $v) {
if (pathinfo($v, PATHINFO_EXTENSION) == $fileexts && is_file($v)){
file_put_contents($v, iconv($in_charset, $out_charset, file_get_contents($v)));
}
}
return true;
}
/**
* 列出目录下所有文件
*
* @param string $path 路径
* @param string $exts 扩展名
* @param array $list 增加的文件列表
* @return array 所有满足条件的文件
*/
function dir_list($path, $exts = '', $list= array()) {
$path = dir_path($path);
$files = glob($path.'*');
foreach($files as $v) {
if (!$exts || pathinfo($v, PATHINFO_EXTENSION) == $exts) {
$list[] = $v;
if (is_dir($v)) {
$list = dir_list($v, $exts, $list);
}
}
}
return $list;
}
/**
* 设置目录下面的所有文件的访问和修改时间
*
* @param string $path 路径
* @param int $mtime 修改时间
* @param int $atime 访问时间
* @return array 不是目录时返回false,否则返回 true
*/
function dir_touch($path, $mtime = TIME, $atime = TIME) {
if (!is_dir($path)) return false;
$path = dir_path($path);
if (!is_dir($path)) touch($path, $mtime, $atime);
$files = glob($path.'*');
foreach($files as $v) {
is_dir($v) ? dir_touch($v, $mtime, $atime) : touch($v, $mtime, $atime);
}
return true;
}
/**
* 目录列表
*
* @param string $dir 路径
* @param int $parentid 父id
* @param array $dirs 传入的目录
* @return array 返回目录列表
*/
function dir_tree($dir, $parentid = 0, $dirs = array()) {
global $id;
if ($parentid == 0) $id = 0;
$list = glob($dir.'*');
foreach($list as $v) {
if (is_dir($v)) {
$id++;
$dirs[$id] = array('id'=>$id,'parentid'=>$parentid, 'name'=>basename($v), 'dir'=>$v.'/');
$dirs = dir_tree($v.'/', $id, $dirs);
}
}
return $dirs;
}
/**
* 删除目录及目录下面的所有文件
*
* @param string $dir 路径
* @return bool 如果成功则返回 TRUE,失败则返回 FALSE
*/
function dir_delete($dir) {
$dir = dir_path($dir);
if (!is_dir($dir)) return FALSE;
$list = glob($dir.'*');
foreach($list as $v) {
is_dir($v) ? dir_delete($v) : @unlink($v);
}
return @rmdir($dir);
}
?>
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
Linux系统安装FTP服务器 Linux系统的网络文件共享 建筑的七盏明灯的内容简介 面向对象设计七大原则 简单说 交互设计七大定律 交互设计的“根”——七大定律 交互设计原则和理论2——七大定律 七大设计原则 附近的加油站有哪些 附近的加油站有哪些地方 人死后的灵魂到哪里去了? 灵魂是什么灵魂会死吗人死后灵魂会在哪? 为什么人死后灵魂用肉眼看不到,却能用相机拍得到? 人死后的灵魂会长成什么样。 梦见老公穿猪肝色衣服是什么意思 php过滤特殊字符代码应该放在哪里? 梦见老公穿黄色衣服抱着我是怎么回事呀? php实现301重定向的代码应该放哪呢? 请问PHP和MySQL的连接代码是要写在哪里啊 求php代码的位置摆放 梦见自己的丈夫穿红色和白色的马甲和黄色外套是什么意思? PHP301重定向代码放在哪个index.php里 梦见老公穿我的米黄外罩衣服 关于php+mysql的小白问题:我要实现登陆功能,在网上找到代码:一个html和一个php,这两个文件放哪里? 梦见我老公穿我的米黄外罩衣服 ThinkPHP后台代码一般放在哪几个文件夹 电脑上如何制作一寸 thinkphp 每个页面都要执行的代码要放在哪里 梦见丈夫穿黄色蕾丝衣服是什么意思 老是不接别人电话是不是特别没礼貌 人死后灵魂到了什么样的世界 人死后的灵魂 市值率怎么算 人死后灵魂会从身体哪个部位出来 什么是市值比率 人死后的灵魂到哪去了是到天堂了吗 已知OOE和回滚比率和市值率,如何求增长机会的现值 市值是什么啊?利率是什么啊?利率如何影响股市啊? 一只股票比如每股收益1毛,未分配利润是1元,两者什么关系?每股静态市盈率和每股动态市盈率有什么区别 网上能申请齐鲁银行的储蓄卡吗? 齐鲁银行的信用卡公务员卡有什么申请条 齐鲁银行的信用卡怎么办 个人在齐鲁银行开户什么条件? 齐鲁银行白金卡办理条件 齐鲁银行以卡办卡是什么意思 十八岁以下的人 在齐鲁银行办银行卡有什么要求 齐鲁银行能用别人的身份证办银行卡吗0 齐鲁银行银行卡办理需要花费多少钱???可以上淘宝买东西不?? 网上能申请齐鲁银行信用卡 玻璃隔热膜怎么贴?玻璃隔热膜粘贴方法详解