PHP 取消符号链接指向实际上不存在的文件不起作用

PHP unlink for symlink pointing actually not existing file is not working

我有一个关于取消链接的奇怪问题。

当我使用 unlink() 函数时,它会删除正确链接到现有文件的符号链接。 但是对于实际指向不存在文件的符号链接文件,它不起作用。

我到处搜索,但找不到正确的原因。

工作流程是这样的: 第一个 PHP 文件删除源文件(由 ajax 请求触发) 然后第二个 php 文件尝试删除指向刚刚被第一个 PHP 文件删除的文件的符号链接。 但是第二个 PHP 文件无法删除符号链接。

知道为什么会发生这种事情吗?

嗯,这是由于 file_exists() 函数。 在取消链接文件之前,它会使用 file_exists() 函数检查文件是否存在。

但问题是这个函数 returns 如果符号链接无效则为 false。