php代码获取指定文件的详细信息

  作者:bea

今天我写了一个简单的php文件,可以输出指定文件的详细信息。我这里是用php中的函数来实现的,大家在开发项目的过程中如果要考虑方便的话可以用php中的类来实现,可以将写一个文件操作类。 下面是我的PHP代码: 我随便传入的文件输出结果为: E:/wamp/www/test/editor.php是一个文件 文件的形态:普通文件 文件的大小:654 Byte 文件可读 文件可写 文件建立的时间:2011年05月31日 文件最后修改的时间:2011年06月01日 文件最后

今天我写了一个简单的php文件,可以输出指定文件的详细信息。我这里是用php中的函数来实现的,大家在开发项目的过程中如果要考虑方便的话可以用php中的类来实现,可以将写一个文件操作类。

下面是我的PHP代码:

//获取文件信息

//设置默认时区
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);

?>

我随便传入的文件输出结果为:

E:/wamp/www/test/editor.php是一个文件
文件的形态:普通文件
文件的大小:654 Byte
文件可读
文件可写
文件建立的时间:2011年05月31日
文件最后修改的时间:2011年06月01日
文件最后访问的时间:2011年05月31日

如果大家对上面代码函数还有不了解的,建议去查查PHP手册。

有用  |  无用

猜你喜欢