php文件操作相关类实例
php
文件操作
类
这篇文章主要介绍了php文件操作相关类,实例分析了php针对文件与目录的创建、删除、复制、检查等操作技巧,需要的朋友可以参考下
本文实例讲述了php文件操作相关类。分享给大家供大家参考。具体如下:
<?php class file_dir { function check_exist($filename) //检查目录或文件是否存在 { if(file_exists($filename)) { return true; } else return false; } function create_dir($dirname,$mode=0777) // 一次只能创建一级目录 { if(is_null($dirname) || $dirname=="") return false; if(!is_dir($dirname)) { return mkdir($dirname,$mode); } } function createDir($aimUrl) //可同时创建多级目录 { $aimUrl = str_replace('\\', '/', $aimUrl); $aimDir = ''; $arr = explode('/', $aimUrl); foreach ($arr as $str) { $aimDir .= $str . '/'; if (!file_exists($aimDir)) { mkdir($aimDir); } } } function delete_dir($dirname) //删除目录 { if($this->check_exist($dirname) and is_dir($dirname)) { if(!$dirhandle=opendir($dirname)) return false; while(($file=readdir($dirhandle))!==false) { if($file=="." or $file=="..") continue; $file=$dirname.DIRECTORY_SEPARATOR.$file; //表示$file是$dir的子目录 if(is_dir($file)) { $this->delete_dir($file); } else { unlink($file); } } closedir($dirhandle); return rmdir($dirname); } else return false; } function copy_dir($dirfrom,$dirto) //复制目录 { if(!is_dir($dirfrom)) return false; if(!is_dir($dirto)) mkdir($dirto); $dirhandle=opendir($dirfrom); if($dirhandle) { while(false!==($file=readdir($dirhandle))) { if($file=="." or $file=="..") continue; $filefrom=$dirfrom.DIRECTORY_SEPARATOR.$file; //表示$file是$dir的子目录 $fileto=$dirto.DIRECTORY_SEPARATOR.$file; if(is_dir($filefrom)) { $this->copy_dir($filefrom,$fileto); } else { if(!file_exists($fileto)) copy($filefrom,$fileto); } } } closedir($dirhandle); } function getdir_size($dirname) //获取目录大小 { if(!file_exists($dirname) or !is_dir($dirname)) return false; if(!$handle=opendir($dirname)) return false; $size=0; while(false!==($file=readdir($handle))) { if($file=="." or $file=="..") continue; $file=$dirname."/".$file; if(is_dir($file)) { $size+=$this->getdir_size($file); } else { $size+=filesize($file); } } closedir($handle); return $size; } function getReal_size($size) // 单位自动转换函数 { $kb=1024; $mb=$kb*1024; $gb=$mb*1024; $tb=$gb*1024; if($size<$kb) return $size."B"; if($size>=$kb and $size<$mb) return round($size/$kb,2)."KB"; if($size>=$mb and $size<$gb) return round($size/$mb,2)."MB"; if($size>=$gb and $size<$tb) return round($size/$gb,2)."GB"; if($size>=$tb) return round($size/$tb,2)."TB"; } function copy_file($srcfile,$dstfile) { if(is_file($srcfile)) { if(!file_exists($dstfile)) return copy($srcfile,$dstfile); } else return false; } function unlink_file($filename) //删除文件 { if($this->check_exist($filename) and is_file($filename)) { return unlink($filename); } else return false; } function getsuffix($filename) //获取文件名后缀 { if(file_exists($filename) and is_file($filename)) { return end(explode(".",$filename)); } } function input_content($filename,$str) //将字符串写入文件 { if(function_exists(file_put_contents)) { file_put_contents($filename,$str); } else { $fp=fopen($filename,"wb"); fwrite($fp,$str); fclose($fp); } } function output_content($filename) //将整个文件内容读出到一个字符串中 { if(function_exists(file_get_contents)) { return file_get_contents($filename); } else { $fp=fopen($filename,"rb"); $str=fread($fp,filesize($filename)); fclose($fp); return $str; } } function output_to_array($filename) //将文件内容读出到一个数组中 { $file=file($filename); $arr=array(); foreach($file as $value) { $arr[]=trim($value); } return $arr; } } //$dir=new file_dir; //$size=$dir->getdir_size("F:/wamp/www/class/images"); //echo $dir->getReal_size($size); ?>
登录后复制
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前
By 尊渡假赌尊渡假赌尊渡假赌
击败分裂小说需要多长时间?
1 个月前
By DDD
R.E.P.O.最佳图形设置
2 周前
By 尊渡假赌尊渡假赌尊渡假赌
刺客信条阴影:贝壳谜语解决方案
1 周前
By DDD
R.E.P.O.如果您听不到任何人,如何修复音频
2 周前
By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

PHP 8.4 带来了多项新功能、安全性改进和性能改进,同时弃用和删除了大量功能。 本指南介绍了如何在 Ubuntu、Debian 或其衍生版本上安装 PHP 8.4 或升级到 PHP 8.4

CakePHP 是 PHP 的开源框架。它的目的是使应用程序的开发、部署和维护变得更加容易。 CakePHP 基于类似 MVC 的架构,功能强大且易于掌握。模型、视图和控制器 gu

Visual Studio Code,也称为 VS Code,是一个免费的源代码编辑器 - 或集成开发环境 (IDE) - 可用于所有主要操作系统。 VS Code 拥有针对多种编程语言的大量扩展,可以轻松编写

登录 CakePHP 是一项非常简单的任务。您只需使用一项功能即可。您可以记录任何后台进程(如 cronjob)的错误、异常、用户活动、用户采取的操作。在 CakePHP 中记录数据很容易。提供了 log() 函数
