0

我有这段代码来检测文件字符集。

$result = exec('file -i ' . $fromFile);

结果将类似于:“perk.csv: text/plain; charset=us-ascii”

一切都很好,直到 $fromFile 保存有空格的文件名。然后它抱怨它无法读取文件。

我的第一个解决方案是用“\”替换任何空格字符。但也许有更好的方法来解决这个问题?我觉得我可能会在这里错过一些东西。

4

1 回答 1

2

使用escapeshellarg函数来转义文件名。

您的代码应该是:

$result = exec('file -i ' . escapeshellarg($fromFile));
于 2013-02-22T04:01:05.183 回答