示例
检查路径是目录还是文件
该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