我有一個簡單的兩個腳本:PHP的escapeshellarg不EXEC工作(字符串中引號未封裝的)
<?
$str = '"<!DOCTYPE><html><head></head><body><h1>FOOO</h1></body></html>"';
exec('phantomjs '.escapeshellarg(dirname(__FILE__).'/render.js ').''.escapeshellarg($str));
?>
從控制檯運行這個時候
,我得到:
Can't open '/Users/me/render.js <!DOCTYPE><html><head></head><body><h1>FOOO</h1></body></html>'
所以這個字符串不會被封裝在引號中,因爲它應該是。我在這裏做錯了什麼? 系統是OSX 10.7,php 5.3.6。
你所需要的「和」我想escapeshellarg把字符串周圍的單引號反正 – Pete