摘要:function create_folder($dirName){ // 判断是否存在相同文件或目录 if (file_exists($dirName)) { return "存在相同文件!"; } // 创建目录并判断&
function create_folder($dirName)
{
// 判断是否存在相同文件或目录
if (file_exists($dirName)) {
return "存在相同文件!";
}
// 创建目录并判断
if (mkdir($dirName, 0777, true)) {
return "目录创建成功!";
}
return "目录创建失败!";
}
//echo create_folder('css');
/**
* 目录删除操作
* @param $path // 需要删除的目录
* @return string 提示信息
*/
function del_folder($path)
{
// 打开目录
$dir = opendir($path);
// 循环读取目录中的内容
while ($item = readdir($dir)) {
// 判断.和.. 特别文件或目录
if ($item != "." && $item != "..") {
// 判断是否为真正的文件
if (is_file($path . "/" . $item)) {
// 删除文件操作
unlink($path . "/" . $item);
}
// 判断是否为真正的目录
if (is_dir($path . "/" . $item)) {
// 回调方法
$func = __FUNCTION__;
// 使用方法
$func($path . "/" . $item);
}
}
}
// 关闭目录
closedir($dir);
// 删除目录
rmdir($path);
return "目录删除成功!";
}
//echo del_folder('file1');
/**
* 目录复制操作
* @param $src // 源目录
* @param $dest // 目标目录
* @return string 提示信息
*/
function copy_dir($src, $dest)
{
// 判断需要复制的目录下是否存在相同的目录或文件
if (!file_exists($dest)) {
mkdir($dest, 0777, true);
} else {
return "该目录下存在相同文件!";
}
// 打开目录
$dir = opendir($src);
// 循环读取目录中的内容
while ($item = readdir($dir)) {
// 判断.和.. 特别文件或目录
if ($item != "." && $item != "..") {
// 判断是否为真正的文件
if (is_file($src . "/" . $item)) {
// 复制操作
copy($src . "/" . $item, $dest . "/" . $item);
}
// 判断是否为真正的目录
if (is_dir($src . "/" . $item)) {
// 回调方法
$func = __FUNCTION__;
// 使用方法
$func($src . "/" . $item, $dest . "/" . $item);
}
}
}
// 关闭目录
closedir($dir);
return "目录复制成功!";
}
//echo copy_dir('upload','css/upload');
/**
* 目录重命名操作
* @param $oldName // 源目录名
* @param $newName // 新目录名
* @return string 提示信息
*/
function rename_dir($oldName, $newName)
{
if (!file_exists($newName)) {
if (rename($oldName, $newName)) {
return "修改成功!";
} else {
return "修改失败!";
}
}
return "已经存在该文件或目录!";
}
//echo rename_dir('css','js');
/**
* 目录剪切操作
* @param $src // 源目录
* @param $dest // 目标目录
* @return string 提示信息
*/
function cut_dir($src, $dest)
{
// 判断是否存在目标目录
if (is_dir($dest)) {
// 拼接目标理解
$dest = $dest . "/" . basename($src);
// 判断目标目录下是否存在相同目录
if (!file_exists($dest)) {
// 判断并剪切操作
if (rename($src, $dest)) {
return "目录剪切成功!";
} else {
return "目录剪切失败!";
}
} else {
return "该目录下已存在此文件!";
}
} else {
return "目标不是目录!";
}
}
//echo cut_dir('admin','js');
/**
* 目录读取操作
* @param $path // 读取的目录
* @return array 数组|失败
*/
function read_dir($path)
{
$arr = [];
$dir = opendir($path);
while ($item = readdir($dir)) {
if ($item != "." && $item != "..") {
if (is_file($path . "/" . $item)) {
$arr['file'][] = $item;
}
if (is_dir($path . "/" . $item)) {
$arr['dir'][] = $item;
}
}
}
closedir($dir);
return $arr;
}
//var_dump(read_dir('js'));
/**
* 目录大小查询操作
* @param $path // 需要查询大小的目录
* @return int // 目录的大小
*/
function dir_size($path)
{
$sum = 0;
global $sum;
$dir = opendir($path);
while ($item = readdir($dir)) {
if ($item != "." && $item != "..") {
if (is_file($path . "/" . $item)) {
$sum += filesize($path . "/" . $item);
}
if (is_dir($path . "/" . $item)) {
$func = __FUNCTION__;
$func($path . "/" . $item);
}
}
}
return $sum;
}
批改老师:韦小宝批改时间:2019-01-12 16:05:49
老师总结:写的很不错 很完整 PHP中对文件操作的函数都还是比较有意思的 课后没事可以多看看 还有很多文件相关的函数课程中没有讲到