2013-10-12 44 views
0
<?php 
    if(file_exists(dirname(__FILE__).'\<<<<<<<')) 
     echo "YES"; 
    else 
     echo "No"; 
?> 

我的服务器PHP的file_exists是Windows 2003的无效的文件名

当我在我的服务器上测试,响应是YES。

但我们都知道文件的名称: “< < < < < < <” 是无效的,所以命名文件 “< < < < < < <” 不存在

那么究竟是什么原因呢?

当我回声目录名(FILE ) '\ < < < < < < <'。

输出为C:\网站\ < < < < < < <

+0

检查这是否仍然说不? <?=(file_exists(dirname(__ FILE __)。'\ <<<<<<<'))? “是”:“否”; ?> –

+0

echo'dirname(__ FILE __)。'\ <<<<<<<'',会输出什么? – srain

+0

var_dump(is_file(dirname(__ FILE __)。'\ <<<<<<''));'output? –

回答

0

你确定你的文件名是正确的 “< < < < < < <”
如果是,那么尝试呼应整路径首先
- $ filename = dirname(FILE)。 '\ < < < < < < <';
echo $ filename; //请看它是否返回正确的路径

2

我认为你应该检查你的服务器文件管理器手册或Windows服务器指南(论坛)。 因为在任何Windows XP/7/8尝试使名称为“ con“或”LPT1“,这将不允许生成...所以它被称为”EASTER Egg“问题......在你的情况下,我认为这个问题就像复活节彩蛋。