PHP中的函数file_exists()存在问题。下面的代码结果总是“存在于字符串上”,但在我看来它应该打印两条消息。
$file = 'test_file.txt';
if (file_exists($file)){
echo 'Exists on variable';
}
if (file_exists('test_file.txt'){
echo 'Exists on string';
}
答案 0 :(得分:-1)
is_file 建议用于验证文件,并为您的路线带来不便,更改
$file = $_SERVER['DOCUMENT_ROOT'].'/mysite/test_file.txt';
is_file和file_exists是两个本机PHP函数,可用于验证特定文件是否存在。虽然他们的名字是相当具有描述性的,但您应该知道:
这种差异非常重要。如果您的目标不仅仅是文件和目录,那么is_file就是您的功能。如果要无差别地检查目录或文件,请选择file_exists
示例:
$file ='mysite/public_html/folder/file.php';
$directory ='/mysite/public_html/folder/';
$exists = is_file( $file );//return true
$exists = is_file( $directory ); //return false
$exists = file_exists( $file );//return true
$exists = file_exists( $directory ); //return true