我正在尝试使用PHP删除网络驱动器上隐藏文件夹中的文件。我试过了:
$file = "\\network_drive\folder\hidden_folder$\my_file.pdf";
unlink($file);
PHP回复:权限被拒绝。
然后我运行print shell_exec('whoami');
来确定PHP正在运行的用户。这返回: nt authority \ system
在文件的安全设置中,我在尝试授予“nt authority / system”权限时搜索了“nt authority”,但是没有返回任何结果。我也尝试搜索'system',它返回了一些用户。然后,我将名为“SYSTEM”的用户的“完全控制”权限添加到文件中:
在授予SYSTEM“完全控制”权限后,我再次运行unlink($file);
,PHP告诉我仍然拒绝了权限。
我认为名为'SYSTEM'的用户将对应于PHP正在谈论的'nt权限/系统',但看起来情况要么不是这样,要么我还没有考虑其他的东西。我没有关于如何删除此文件的想法 - 其他人是否有关于如何完成此操作的建议?
答案 0 :(得分:0)
双引号字符串中的反斜杠用于转义下一个字符。你的文件名看起来应该更像这样:
$file = "\\\\network_drive\\folder\\hidden_folder$\\my_file.pdf";
或者使用单引号:
$file = '\\network_drive\folder\hidden_folder$\my_file.pdf';