Php 函数文件_exists始终返回false

Php 函数文件_exists始终返回false,php,Php,当调用函数文件_存在时,我总是得到false。 我可以使用readlink-f test.txt获取文件的完整路径。 然后当我做文件存在('/home/user/projects/test\u project/test.txt')时,我得到了false。为什么? 我在想可能有文件权限。但是chmod或chown帮不了我。 将文件移动到文件夹file\u exists('/home/user/test.txt')对我也没有帮助 PHP8.0file\u exists使用正在运行的进程的权限,因此该

当调用函数文件_存在时,我总是得到false。 我可以使用
readlink-f test.txt
获取文件的完整路径。 然后当我做
文件存在('/home/user/projects/test\u project/test.txt')
时,我得到了false。为什么?

我在想可能有文件权限。但是chmod或chown帮不了我。 将文件移动到文件夹
file\u exists('/home/user/test.txt')
对我也没有帮助


PHP8.0

file\u exists使用正在运行的进程的权限,因此该进程必须能够访问该文件夹。 我相信这是一个系统限制,而不是php问题。
您可以使用脚本运行时存在的文件吗?就像文件_存在一样(“./index.php”)

注意:此函数的结果将被缓存。有关更多详细信息,请参阅。执行readlink-f text.txt时,您正在使用shell用户权限访问该文件,例如,如果您以root用户身份登录。但是,当do file_exists()时,您使用web用户权限访问该文件,就像在debian上一样,您是www数据用户。所以你可以试试这个:chown www data test.txt,然后再次调用file_exists()。请做一些研究,有很多关于这个行为的帖子,file exists可以在PHP8.0和8.0.2上完美工作。首先,您必须确定项目根文件夹。您可以使用DIR获取当前目录,然后将剩余路径附加到DIR常量,然后将其回显$x=文件_存在($path./practice/json.php”);回声“;var_dump(x美元);回声“;如果文件存在,则为true;如果文件不存在,则为false