标签: php
我有这段代码来检测文件字符集。
$result = exec('file -i ' . $fromFile);
结果将类似于:“perk.csv:text / plain; charset = us-ascii”
一切都很好,直到$ fromFile持有文件名,里面有空格。然后它抱怨它无法读取文件。
我的第一个解决方案是用“\”替换任何空格字符。但也许有更好的方法来解决这个问题?我觉得我可能会错过这里的东西。
答案 0 :(得分:2)
使用escapeshellarg功能转义文件名。
您的代码应为:
$result = exec('file -i ' . escapeshellarg($fromFile));