我正在编写一个 php CLI 脚本,该脚本接受路径等参数。
所以一个例子是:
php myscript.php -p=/Volumes/Macintosh HD/Users/andrea/samples
该脚本有自己的方法来红色参数,它正确地获取 -p 的值,将其设置在一个名为 $project_path 的变量中。
但是,当我使用 isdir($project_path) 测试文件夹时,它返回 false。
我试图以不同的方式传递路径:
- /Volumes/Macintosh\ HD/Users/andrea/samples
- '/Volumes/Macintosh HD/Users/andrea/samples'
- “/Volumes/Macintosh HD/Users/andrea/samples”
- '/Volumes/Macintosh\HD/Users/andrea/samples'
- “/Volumes/Macintosh\HD/Users/andrea/samples”
它们都不起作用。我必须使用什么格式才能使其工作?请考虑该脚本还必须在不同的操作系统(即 Windows)上运行。
问题是路径参数被自动转义:我需要对其进行转义。返回的字符串是:
\'/Volumes/Macintosh\ HD/Users/andrea/samples\'