php 获取文件详细信息,PHP 获取文件信息

示例

检查路径是目录还是文件

该is_dir函数返回参数是否为目录,而is_file返回参数是否为文件。使用file_exists来检查它是否是要么。

$dir  = "/this/is/a/directory";

$file = "/this/is/a/file.txt";

echo is_dir($dir) ? "$dir is a directory" : "$dir is not a directory", PHP_EOL,

is_file($dir) ? "$dir is a file" : "$dir is not a file", PHP_EOL,

file_exists($dir) ? "$dir exists" : "$dir doesn't exist", PHP_EOL,

is_dir($file) ? "$file is a directory" : "$file is not a directory", PHP_EOL,

is_file($file) ? "$file is a file" : "$file is not a file", PHP_EOL,

file_exists($file) ? "$file exists" : "$file doesn't exist", PHP_EOL;

这给出:

/this/is/a/directory is a directory

/this/is/a/directory is not a file

/this/is/a/directory exists

/this/is/a/file.txt is not a directory

/this/is/a/file.txt is a file

/this/is/a/file.txt exists

检查文件类型

使用filetype来检查文件,该文件可能是类型:fifo

char

dir

block

link

file

socket

unknown

将文件名filetype直接传递给:

echo filetype("~"); // 目录

请注意,如果文件不存在,则filetype返回false并触发E_WARNING。

检查可读性和可写性

将文件名传递给is_writable和is_readable函数,分别检查文件是否可写或可读。

false如果文件不存在,函数将正常返回。

检查文件访问/修改时间

使用filemtime并fileatime返回上次修改或访问文件的时间戳。返回值是Unix时间戳-有关详细信息,请参见使用日期和时间。

echo "文件上次修改时间: " . date("Y-m-d", filemtime("file.txt"));

echo "上次访问文件的时间 " . date("Y-m-d", fileatime("file.txt"));

使用fileinfo获取路径部分

$fileToAnalyze = ('/var/www/image.png');

$filePathParts = pathinfo($fileToAnalyze);

echo '

';

print_r($filePathParts);

echo '

';

此示例将输出:

Array

(

[dirname] => /var/www

[basename] => image.png

[extension] => png

[filename] => image

)

可以用作:

$filePathParts['dirname']

$filePathParts['basename']

$filePathParts['extension']

$filePathParts['filename']参数细节$路径要解析的文件的完整路径

$选项四个可用选项之一[PATHINFO_DIRNAME,PATHINFO_BASENAME,PATHINFO_EXTENSION或PATHINFO_FILENAME]如果未传递选项(第二个参数),则返回一个关联数组,否则返回一个字符串。

不验证文件是否存在。

只需将字符串解析为多个部分。不对文件进行验证(不进行mime类型检查等)

扩展名只是“。”的最后一个扩展名。即使从技术上$path  来说,文件的路径image.jpg.png也将是文件。没有扩展名的文件将不返回数组中的扩展元素。.png.jpg

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值