PHP文件存在错误 - 在外面检查?

时间:2012-12-05 04:30:59

标签: php file



我目前正在使用安装了WAMP服务器的Windows 7。我试图做一个简单的PHP“文件存在”命令但由于某种原因,它的工作方式不同....这是我的代码:

if(file_exists('\prop\sys\config.txt')) {
echo 'exist';
} else {
echo 'dont exist';
}

听起来很简单,即使文件确实存在,PHP也不会存在。这让我很困惑,但是当我尝试让PHP检查我的实际计算机上的文件时:

if(file_exists('C:\Users\PeopleUser\Desktop\f.txt')) {
echo 'exist';
} else {
echo 'dont exist';
}

令人惊讶的是,它回归真实!所以这意味着WAMP正在检查它应该在的文件夹的OUTSIDE。我尝试启用“安全模式”并重新启动WAMP但它仍然不起作用,我也禁用“公开PHP”也试图阻止它。它无法正常工作,PHP将自由检查我的电脑。

我怎么能阻止这个?

1 个答案:

答案 0 :(得分:0)

PHP是一个服务器端进程,可以访问主机的文件系统。您指定的任何路径都是文件系统路径。

最好构建一个相对于PHP文件的路径。例如,假设包含您的代码的文件位于文档根目录(包含prop文件夹的同一文件夹中)

$path = realpath(__DIR__ . '/prop/sys/config.txt');

if (file_exists($path)) {
    // and so on