基本上,我有一个脚本看不到OS X机器上的现有目录。目录已经从外部硬盘复制到桌面上,我认为这可能是问题的核心。
$path = '/Users/username/Desktop/testfolder';
$path = realpath($path);
以上内容不起作用。
$path = '/Users/username/Desktop';
$path = realpath($path);
上面的操作很好。
我给你介绍一下情况。我运行的是Mac OS X Lion 10.7。我已经安装了XAMPP。这是一个需要在同一网络上与iPad通信的信息亭iMac,否则我就不会在OS X上运行apache。iPad需要从iMac中检索一些图像,而PHP基本上是作为代理来实现这一点的。我创建了一个后端,让管理员设置图像的路径,这就是发生此错误的地方。
所以,我不确定发生了什么。我想这与外部硬盘上这些文件的权限和所有者之间的冲突有关。我相信我们可以在Terminal中做一个"chown"或"chmod",但这并不是一个很好的解决方案。我喜欢让PHP适应这样的场景。有什么想法吗?求你了!?:-)
这是一个奇怪的问题,但尽管这很有效:
$path = '/Users/username/Desktop';
$path = realpath($path);
"桌面"目录没有正确的权限。一旦我更改了桌面上的权限,它就允许我访问以下路径:
$path = '/Users/username/Desktop/testfolder';
$path = realpath($path);
手册中确实说明了The running script must have executable permissions on all directories in the hierarchy, otherwise realpath() will return FALSE.
,这似乎是问题所在。