php实时获取文件内容,PHP获取指定文件详细信息的实例代码

该PHP脚本展示了如何获取文件的信息,包括文件是否存在、类型、大小、读写权限以及最后的访问和修改时间。通过date_default_timezone_set设置时区为PRC。getFileInfo函数检查文件路径,is_file和is_dir判断文件或目录,getFileType根据filetype返回文件类型,getFileSize使用filesize转换文件大小单位。此外,还检查了文件的读写权限,并显示了文件的创建、修改和访问时间。

/**

* 功能:获取文件信息

* 编辑:www.jbxue.com

*/

//设置默认时区

date_default_timezone_set('PRC');

function getFileInfo($filePath){

if(!file_exists($filePath)){

echo '指定的文件不存在!';

return;

}

if(is_file($filePath)){

echo $filePath.'是一个文件'.'
';

}

if(is_dir($filePath)){

echo $filePath.'是一个目录'.'
';

}

echo '文件的形态:'.getFileType($filePath).'
';

echo '文件的大小:'.getFileSize($filePath).'
';

if(is_readable($filePath)){

echo '文件可读'.'
';

}else{

echo '文件不可读'.'
';

}

if(is_writeable($filePath)){

echo '文件可写'.'
';

}else{

echo '文件不可写'.'
';

}

echo '文件建立的时间:'.date('Y年m月d日',filectime($filePath)).'
';

echo '文件最后修改的时间:'.date('Y年m月d日',filemtime($filePath)).'
';

echo '文件最后访问的时间:'.date('Y年m月d日',fileatime($filePath)).'
';

}

function getFileType($filePath){

switch(filetype($filePath)){

case 'file':

$type.='普通文件';

break;

case 'dir':

$type.='目录文件';

break;

case 'block':

$type.='块设备文件';

break;

case 'char':

$type.='字符设备文件';

break;

case 'fifo':

$type.='命名管道文件';

break;

case 'link':

$type.='符号链接';

break;

case 'unknown':

$type.='未知文件类型';

break;

default:

$type.='没有检测到文件类型';

}

return $type;

}

function getFileSize($filePath){

$bytes=filesize($filePath);

//1TB=1024GB 1GB=1024MB 1MB=1024KB 1KB=1024B

if($bytes > pow(2,40)){

$size = round($bytes/pow(1024,4),2);

$unit = 'TB';

}elseif($bytes > pow(2,30)){

$size = round($bytes/pow(1024,3),2);

$unit = 'GB';

}elseif($bytes > pow(2,20)){

$size = round($bytes/pow(1024,2),2);

$unit = 'MB';

}elseif($bytes > pow(2,10)){

$size = round($bytes/pow(1024,1),2);

$unit = 'KB';

}else{

$size = $bytes;

$unit = 'Byte';

}

return $size.' '.$unit;

}

$filePath = $_SERVER['DOCUMENT_ROOT'].'/test/editor.php';

getFileInfo($filePath);

?>

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值