• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

PHP文件处理函数

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

1.basename() 函数返回路径中的文件名部分。

$path = __FILE__;//获取当前文件路径

echo basename($path,".php");

输出:文件当前文件的名称

2.dirname() 函数返回路径中的目录部分。

$path = __FILE__;
var_dump(dirname($path));

输出:string(15) "D:\phpStudy\WWW"

3.pathinfo() 函数以数组的形式返回文件路径的信息。

$path = __FILE__;
var_dump(pathinfo($path));

输出:array(4) { ["dirname"]=> string(15) "D:\phpStudy\WWW" ["basename"]=> string(5) "2.php" ["extension"]=> string(3) "php" ["filename"]=> string(1) "2" }

4.filetype() 函数返回指定文件或目录的类型。

本函数的结果会被缓存。请使用 clearstatcache() 来清除缓存。

$path = __FILE__;
var_dump(filetype($path));

输出:string(4) "file",表示文件

$path = __FILE__;
var_dump(filetype(dirname($path)));

输出:string(3) "dir",表示文件夹

5.fstat() 函数返回关于打开文件的信息。

$path = __FILE__;
// 打开文件
$fp = fopen($path, "r");

// 'r'表示只读方式打开,将文件指针指向文件头。

// 'r+'表示读写方式打开,将文件指针指向文件头。

// 'w'表示写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。

// 'w+'表示读写方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。

// 'a'表示写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。

// 'a+'表示读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。

// 取得统计信息
$fstat = fstat($fp);
// 关闭文件    如果成功则返回 true,否则返回 false。
fclose($fp);
// 只显示关联数组部分
var_dump(array_slice($fstat,13));

输出:array(13) { ["dev"]=> int(0) ["ino"]=> int(0) ["mode"]=> int(33206) ["nlink"]=> int(1) ["uid"]=> int(0) ["gid"]=> int(0) ["rdev"]=> int(0) ["size"]=> int(220) ["atime"]=> int(1514203676) ["mtime"]=> int(1514879951) ["ctime"]=> int(1514203676) ["blksize"]=> int(-1) ["blocks"]=> int(-1) }

 

6.filesize() 函数返回指定文件的大小。

若成功,则返回文件大小的字节数。若失败,则返回 false 并生成一条 E_WARNING 级的错误。

$filename = __FILE__;
echo $filename . ': ' . filesize($filename) . ' bytes';

输出:D:\phpStudy\WWW\2.php: 133 bytes

7.disk_total_space() 函数返回指定目录的磁盘总大小。参数是一个目录的字符串。该函数将根据相应的文件系统或磁盘分区返回所有的字节数。

var_dump(disk_total_space('C:')); 

输出:float(123214659584)   表示C盘的大小

8.fileatime() 函数返回指定文件的上次访问时间。

$file=__FILE__;
echo fileatime($file);

输出:1514203676 时间戳

 

实例:递归实现文件删除

//传入目录路径
private function _deleteDir($R)
{
//打开文件目录 然后读取其内容
$handle = opendir($R);
//便利文件目录 并判断目录是否存在
while (($item = readdir($handle)) !== false) {
//判断目录结构
if ($item != '.' and $item != '..') {
//判断当前的文件是目录还是文件
if (is_dir($R . '/' . $item)) {
//如果是目录再次 调用自己继续便利
$this->_deleteDir($R . '/' . $item);
} else {
//删除文件
if (!unlink($R . '/' . $item))
die('error!');
}
}
}
//closedir() 函数关闭目录
closedir($handle);
//rmdir函数删除空的目录。成功返回true
return rmdir($R);
}

 

 

实现读取文件夹下文件的大小

header('content-type:text/html;charset=utf8');

$path=".";//.是当前目录,你可以换成自己的目录地址
foreach(scandir($path) as $v){
if(!is_dir($v)){//如果不是目录,就是文件了
$size=filesize($v);
echo "文件:".$v." 大小:".byte_format($size)."";//单位是kb
}
}

//格式化函数
function byte_format($size, $dec=2){
$a = array("B", "KB", "MB", "GB", "TB", "PB");
$pos = 0;
while ($size >= 1024) {
$size /= 1024;
$pos++;
}
return round($size,$dec)." ".$a[$pos];
}

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
php实现文件下载并重新命名发布时间:2022-07-10
下一篇:
redisList命令,php操作RedisList函数介绍发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap