PHP 文件处理:检测目录是否存在 Draft 1 个改进

欲对目录或目录中的文件进行操作时,应先行检测目录是否存在,否则可能会引发异常或错误,PHP 提供了两个函数用于检测目录是否存在:file_exists()is_dir()

file_exists() 函数

检测目录(或文件)是否存在,如果存在则返回 TRUE,否则返回 FALSE

示例

检测脚本文件所在目录是否存在 sample 子目录。

<?php
$path = __DIR__.'/sample';

if (file_exists($path)) {
 echo "目录或文件存在\n";
} else {
 echo "目录或文件不存在\n";
}
?>

注意

  • file_exists() 函数不仅检测是否存在指定名称的目录,也检测是否存在指定名称的文件。这就可能存在一个潜在的坑,即不存在指定名称的目录,但存在指定名称的文件,也返回 TRUE

is_dir() 函数

检测目录是否存在,如果存在则返回 TRUE,否则返回 FALSE

示例

检测脚本文件所在目录是否存在 sample 子目录。

<?php
$path = __DIR__.'/sample';

if (is_dir($path)) {
 echo "目录存在\n";
} else {
 echo "目录不存在\n";
}
?>

结语

在实际开发中,推荐使用 is_dir() 函数检测目录是否存在,因为其无歧义且根据测试,它的执行效率要高于 file_exist() 函数。

参考

本 Wiki 尚未完善,邀您参与 如何撰写一篇高品质的 Wiki?
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!