Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有这段代码来检测文件字符集。
$result = exec('file -i ' . $fromFile);
结果将类似于:“perk.csv: text/plain; charset=us-ascii”
一切都很好,直到 $fromFile 保存有空格的文件名。然后它抱怨它无法读取文件。
我的第一个解决方案是用“\”替换任何空格字符。但也许有更好的方法来解决这个问题?我觉得我可能会在这里错过一些东西。
使用escapeshellarg函数来转义文件名。
您的代码应该是:
$result = exec('file -i ' . escapeshellarg($fromFile));