PHP 符号链接到子目录


PHP symlink into subdirectory

我正在尝试使用PHP创建一个符号链接,指定原始路径和链接路径。

我的路径是:

/tx/file.jpg
/sym.php

这是代码:

symlink("tx/file.jpg","tx/link.jpg");

而且它不起作用,它不会在日志中给我错误,它只是没有创建符号链接。
我什至尝试使用:

symlink(getcwd() . "/tx/file.jpg", getcwd() . "/tx/link.jpg");

没有运气。

相反,如果我在/tx/目录中移动脚本并运行:

symlink("file.jpg","link.jpg");

它有效。
为什么?我该如何解决它?我在 CentOS 5 服务器上。

符号链接的路径相对于符号链接所在的目录,而不是您当前的工作目录!因此,您正在创建的链接指的是您所谓的tx/tx/file.jpg,它不存在。您需要将其创建为:

symlink("file.jpg", "tx/link.jpg");