php文件系统函数不';无法在远程服务器上工作

php文件系统函数不';无法在远程服务器上工作,php,Php,在本地主机(win7、xampp)上,这可以正常工作: $path = "NOTES\AA FILE - 323.txt"; $cnt = file_get_contents($path); echo $cnt; // content of the file 但在远程服务器上-相同的代码-没有任何响应 此外: 上述操作在本地主机上有效,在远程服务器上无效(文件夹未重命名)假设远程服务器运行Linux,则路径应包含正斜杠,而不是反斜杠!试试这个: $old = &q

在本地主机(win7、xampp)上,这可以正常工作:

$path = "NOTES\AA FILE - 323.txt";
$cnt = file_get_contents($path);
echo $cnt;  // content of the file
但在远程服务器上-相同的代码-没有任何响应

此外:


上述操作在本地主机上有效,在远程服务器上无效(文件夹未重命名)

假设远程服务器运行Linux,则路径应包含正斜杠,而不是反斜杠!试试这个:

    $old = "NOTES/A FOLDER";
$anew = "NOTES/PAY";
rename($old, $anew);

假设您的远程服务器运行Linux,您的路径应该包含正向斜杠,而不是反向斜杠!试试这个:

    $old = "NOTES/A FOLDER";
$anew = "NOTES/PAY";
rename($old, $anew);


您的远程服务器是否也运行Windows?重命名调用后是否收到任何输出或错误消息?我希望文件权限正常,并且执行此操作的用户具有权限。@Nikster2014 afaik远程服务器都在linux上。否-没有任何错误消息Windows和linux之间的一个区别是linux在文件/目录名中区分大小写,所以只需检查它们是否完全相同。@NigelRen-谢谢,谢谢,谢谢。。。最终解决了您的远程服务器是否也运行Windows?重命名调用后是否收到任何输出或错误消息?我希望文件权限正常,并且执行此操作的用户具有权限。@Nikster2014 afaik远程服务器都在linux上。否-没有任何错误消息Windows和linux之间的一个区别是linux在文件/目录名中区分大小写,所以只需检查它们是否完全相同。@NigelRen-谢谢,谢谢,谢谢。。。最终解决了这一问题。作为更好的实践,我们可以使用
目录分隔符
常量为任何操作系统环境正确获取路径斜杠。“notes/a folder”看起来不是正确的路径名。目录名真的包含空格吗?另外,您的dir权限设置是否正确?试着以SU的形式运行脚本,看看它是否有效。是的,有空格。这些是文件夹名称,我需要空格在这种情况下,请尝试转义目录名称中的空格:$old=“NOTES/A\folder”;现在,我将所有空格替换为
\u
——同样的结果应该适用于OP。更好的做法是,我们可以使用
目录分隔符
常量来正确获取任何操作系统环境的路径斜杠。“notes/a folder”看起来不是正确的路径名。目录名真的包含空格吗?另外,您的dir权限设置是否正确?试着以SU的形式运行脚本,看看它是否有效。是的,有空格。这些是文件夹名称,我需要空格在这种情况下,请尝试转义目录名称中的空格:$old=“NOTES/A\folder”;现在我将所有空格替换为
——结果相同