php文件相关操作
//遍历目录及文件
function myBianli($dirname){
//1.打开
$dir = opendir($dirname);
//2.读取
while($filename = readdir($dir)){
if($filename != '.' && $filename != '..'){
//拼接路径
$path = $dirname.'/'.$filename;
if(is_dir($path)){
echo '目录:<a href="?path='.$path.'">'.$path.'</a><hr/>';
}else{
echo '文件:'.$path.'<br/>';
}
}
}
//3.关闭
closedir($dir);
}
//移动文件
<?php
//移动目录
//@param1:原路径
//@param2:目标路径
myReName('原路径','目标路径');
function myReName($dirsrc,$dirto){
//1.判断目标是否是目录
if(is_file($dirto)){
echo '目标不是目录不能创建';
return;
}
//2.判断目标目录是否存在 不存在则创建
if(!file_exists($dirto)){
mkdir($dirto);
echo '创建目录:'.$dirto.'成功<br/>';
}
//3.打开原目录
$dir = opendir($dirsrc);
//4.循环读取源目录
while($filename = readdir($dir)){
//过滤点和点点
if($filename != '.' && $filename != '..'){
//拼接源完整路径
$file1 = $dirsrc.'/'.$filename;
//拼接目标完整路径
$file2 = $dirto.'/'.$filename;
//判断源完整路径是否是目录
if(is_dir($file1)){
//调用函数
myReName($file1,$file2);
}else{
//是文件
rename($file1,$file2);
echo '移动文件:'.$file1.'成功<br/>';
}
}
}
//5.关闭源目录
closedir($dir);
//6.删除源目录
rmdir($dirsrc);
}
//统计目录大小
<?php
$size = dirsize('./daye');
echo $size.'<hr/>';
$s = tosize($size);
echo $s.'<br/>';
function dirsize($dirname){
//统计目录大小
$total = 0;
//1.打开目录
$dir = opendir($dirname);
//2.循环读取
while($filename = readdir($dir)){
//2.1过滤掉点和点点
if($filename != '.' && $filename != '..'){
//2.2拼接完整路径
$path = $dirname.'/'.$filename;
//2.3是文件还是目录
if(is_dir($path)){
$total += dirsize($path);
}else{
$total += filesize($path);
}
}
}
//3.关闭目录
closedir($dir);
return $total;
}
function tosize($size){
if($size > pow(1024,3)){
$dw = 'GB';
$size = round($size/pow(1024,3),2);
}elseif($size > pow(1024,2)){
$dw = 'MB';
$size = round($size / pow(1024,2),2);
}elseif($size > 1024){
$dw = 'KB';
$size = round($size / 2014,2);
}else{
$dw = 'byte';
}
return $size.$dw;
}
/*
1024byte = 1kb
1024kb = 1mb
1024mb = 1GB
*/
//统计数量
<?php
$dirnum = 0;
$filenum = 0;
total('目录路径',$dirnum,$filenum);
echo '目录数:'.$dirnum;
echo '<br/>文件数:'.$filenum;
//统计目录和文件个数
function total($dirname,&$dirnum,&$filenum){
//1.打开目录
$dir = opendir($dirname);
//2.循环读取目录
while($filename = readdir($dir)){
// 2.1过滤掉点和点点
if($filename != '.' && $filename != '..'){
// 2.2拼接完整路径
$path = $dirname.'/'.$filename;
// 2.3判断是否是目录
if(is_dir($path)){
//调用自己
total($path,$dirnum,$filenum);
$dirnum ++;
}else{
//不是目录 是文件
$filenum ++;
}
}
}
//3.关闭目录
closedir($dir);
}
php文件相关操作的更多相关文章
- Git基本命令 -- 基本工作流程 + 文件相关操作
可以先找一个已经被git管理的项目, 我就使用这个项目吧: https://github.com/solenovex/ID3-Editor 基本工作流程 克隆以后呢, 进入该目录查看一下状态: 然后添 ...
- python文件相关操作
Python文件相关操作 打开文件 打开文件,采用open方法,会将文件的句柄返回,如下: f = open('test_file.txt','r',encoding='utf-8') 在上面的代码中 ...
- VC++文件相关操作的函数封装实现
在开发编译工具中,需要用到文件的相关操作,于是就封装了相关的函数实现: //判断文件是否存在 BOOL FileIsExist(CString strFileName) { CFileFind fin ...
- 【原创】Linux基础之gz文件相关操作
gz文件不需要解压即可进行相关操作 $ zcat test.log.gz $ zmore test.log.gz $ zless test.log.gz $ zgrep '1.2.3.4' test. ...
- Nodejs文件相关操作
欢迎关注我的博客我在马路边 适用人群 本文适用于刚接触Node的小白,毕竟我也是小白,大佬请绕行. Node文件操作 在实际开发中遇到很多有关文件及文件夹的操作,比如创建.删除文件及文件夹,文件拷贝. ...
- linux学习笔记一----------文件相关操作
一.目录结构 二.文件管理操作命令(有关文件夹操作,使用Tab键自动补全文件名(如果多个默认第一个)) 1.ls 查看目录信息:ls -l 查看目录详细信息(等价于ll 某些系统不支持) 2.pwd ...
- UWP中的文件相关操作
最近开始做UWP开发,图省事儿就把自己之前一个Winform项目的一部分代码拷贝到了新写的UWP项目中来.整出了一些幺蛾子,下面做一个记录. 首先提一个重点就是:UWP里关于文件的操作尽量用Stora ...
- UNIX高级环境编程(5)Files And Directories - 文件相关时间,目录文件相关操作
1 File Times 每个文件会维护三个时间字段,每个字段代表的时间都不同.如下表所示: 字段说明: st_mtim(the modification time)记录了文件内容最后一次被修改的时 ...
- 关于php的ini文件相关操作函数浅析
在小公司,特别是创业型公司,整个服务器的搭建一般也是我们 PHP 开发工程师的职责之一.其中,最主要的一项就是要配置好服务器的 php.ini 文件.一些参数会对服务器的性能产生深远的影响,而且也有些 ...
- c语言中文件相关操作
一 .首先介绍一下数据文件的类型: 1.二进制文件(映像文件):在内存中以二进制形式存取. 2.文本文件(ascii文件):以ascii码形式存取的文件. 通俗的讲,在Mac下,你把一个文件丢进记事本 ...
随机推荐
- 解决Spring框架下中文乱码的问题
在使用了Spring框架下回发现很多表单交互的地方会发生乱码,而且写到数据库中也是乱码,这其实还是字符编码的问题,在我们还在用自己写的servlet的时候,直接在request和response加上字 ...
- GOOGLE高级搜索技巧
前记: 我是完整的看完了.内容有点乱啊,自己没有时间整理,先放在自己的印象笔记里了.... 二,GOOGLE特色 GOOGLE支持多达132种语言,包括简体中文和繁体中文: GOOGLE网站只提 ...
- C# winfrom界面跳转闪烁问题解决方法
在窗体的构造函数中添加代码: SetStyle(ControlStyles.UserPaint, true); SetStyle(ControlStyles.AllPaintingInWmPaint, ...
- webpack笔记二 管理资源
webpack笔记二 管理资源 webpack最出色的功能之一就是除了引入JavaScript,还可以通过loader引入任何其它类型的文件. 加载CSS 为了在JavaScript模块中import ...
- SharePoint2007深入浅出——使用jQuery UI
jQuery1.6.4.js + jQuery UI 1.8.16.js 只有这个版本在IE8下的兼容性视图+Quirks(文本模式),dialog可以正常显示.
- December 19th 2016 Week 52nd Sunday
Truth and roses have thorns about them. 真理和玫瑰,身边都有刺. Either truth or roses, they all have thorns aro ...
- 在ASP.NET MVC中,使用Bundle来打包压缩js和css(转)
转自:http://www.cnblogs.com/xwgli/p/3296809.html 在ASP.NET MVC4中(在WebForm中应该也有),有一个叫做Bundle的东西,它用来将js和c ...
- There was a problem confirming the ssl certificate: [SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:661) - skipping
Could not fetch URL https://pypi.python.org/simple/xlrd/: There was a problem confirming the ssl cer ...
- ES 6 装饰器与 React 高阶组件
关于 Decorator 到底是 ES 6 引入的还是 ES 7 引入的我也不是很明白了,两种说法都有,这种问题懒得纠结了--在用的时候发现这个东西很好用,平常用处可能不大,但是结合 React 就很 ...
- video设置视频的播放位置(本例中实现效果是视频第一次播放完成后,接下来中从视频的中间部位开始循环播放)
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...