这篇文章将为大家详细讲解有关PHP检查文件或目录是否存在,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
使用 PHP 检查文件或目录是否存在
在 php 中,检查文件或目录是否存在是常见任务。有几种方法可以完成此操作:
file_exists() 函数
file_exists()
函数检查指定文件是否存在,返回布尔值(true
表示存在,false
表示不存在)。
if (file_exists("path/to/file.txt")) { // 文件存在 } else { // 文件不存在 }
is_file() 函数
is_file()
函数检查指定路径是否是一个普通文件,返回布尔值(true
表示是文件,false
表示不是文件)。
if (is_file("path/to/file.txt")) { // 是一个文件 } else { // 不是一个文件 }
isdir() 函数
isdir()
函数检查指定路径是否是一个目录,返回布尔值(true
表示是目录,false
表示不是目录)。
if (isdir("path/to/directory")) { // 是一个目录 } else { // 不是一个目录 }
filemtime() 函数
filemtime()
函数返回指定文件最后修改的时间戳。如果文件不存在,返回 false
。
if (filemtime("path/to/file.txt")) { // 文件存在 } else { // 文件不存在 }
fileatime() 函数
fileatime()
函数返回指定文件最后访问的时间戳。如果文件不存在,返回 false
。
if (fileatime("path/to/file.txt")) { // 文件存在 } else { // 文件不存在 }
pathinfo() 函数
pathinfo()
函数返回有关文件路径的信息数组,其中包括文件是否存在。
$path_info = pathinfo("path/to/file.txt"); if ($path_info["dirname"] && $path_info["basename"]) { // 文件存在 } else { // 文件不存在 }
glob() 函数
glob()
函数返回与指定模式匹配的文件和目录的数组。如果不存在匹配项,则返回空数组。
$files = glob("path/to/files/*"); if ($files) { // 文件或目录存在 } else { // 文件或目录不存在 }
最佳实践
realpath()
函数解析符号链接,以确保检查的是实际文件或目录。file_exists()
函数作为其他检查的捷径,因为它是最快的。