这有效:
$command = "convert C:\wamp\www\site\uploads\a.jpg -resize 40x30 ^ C:\wamp\www\site\uploads\a-thumb.jpg";
exec($command);
由于我使用的是双引号,我认为这也可行:
$command = "convert C:\wamp\www\site\uploads\$file_name.jpg -resize 40x30 ^ C:\wamp\www\site\uploads\$file_name-thumb.jpg";
exec($command);
但是$file_name
var没有被重新调整,但出于某种原因它被视为一个字符串。
所以我尝试了这个:
$command = "convert C:\wamp\www\site\uploads\".$file_name.".jpg -resize 40x30 ^ C:\wamp\www\site\uploads\".$file_name."-thumb.jpg";
exec($command);
但这引发了一堆语法错误。
如何正确转义此字符串?通过转义,我只是指如何将其与变量$file_name
一起使用。
答案 0 :(得分:1)
不,你应该使用单引号来正确逃脱。
答案 1 :(得分:1)
请尝试以下规则:
$command = "convert C:\wamp\www\site\uploads\{$file_name}.jpg -resize 40x30 ^ C:\wamp\www\site\uploads\{$file_name}-thumb.jpg";
exec($command);
或:
$command = "convert C:\wamp\www\site\uploads\%s.jpg -resize 40x30 ^ C:\wamp\www\site\uploads\%s-thumb.jpg";
exec(sprintf($command, $filename, $filename));
答案 2 :(得分:0)
您可以添加括号以使其有效:
$command = "convert C:\wamp\www\site\uploads\{$file_name}.jpg -resize 40x30 ^ C:\wamp\www\site\uploads\{$file_name}-thumb.jpg";