exec()
函数用于更改Windows机器中的文件属性,只要给定的路径位于开发文件夹中即可。像
d:\程序\发展\ WWW \
只要文件在该路径中,它的属性就可以改变。
$path = D:\Programs\Development\www\test.jpg
exec("attrib +s +h $path");
这样可行,但是一旦我将路径更改为其他地方,此功能似乎无法正常工作
$path = 'D:\Desktop\New Folder (2)\Test Folders\test.jpg'
exec("attrib +s +h $path");
现在相同的命令不起作用。关于如何解决这个问题的任何想法?
答案 0 :(得分:1)
您需要将路径放在引号中。
与大多数操作系统一样,文件名中的空格是您必须要处理的问题。这通常使用反斜杠来完成,但是,由于Windows对其文件夹系统使用反斜杠,因此您需要使用引号。
$path = 'D:\Desktop\New Folder (2)\Test Folders\test.jpg'
exec("attrib +s +h \"{$path}\"");
这应该适合你。