mogrify使用括号调整文件名大小

时间:2011-07-30 07:26:31

标签: php imagemagick mogrify

在php中,当调整包含“(”括号。

的文件名的文件名时失败 通常我做

exec("mogrify -resize {$filewidth}x{$fileheight}! \"$file\"");

但它不能与包含

的文件名一起使用

命令行必须像这样转义才能工作。

mogrify -resize 203x126! 53v-slave-only\(2\).png

如何通过exec()命令

为php修复它

注意文件名必须使用括号。

谢谢。

2 个答案:

答案 0 :(得分:3)

在使用与命令行一起使用的函数时,尝试使用escapeshellcmdescapeshellarg

例如:

<?php
$filewidth = escapeshellcmd($filewidth);
$fileheight = escapeshellcmd($fileheight);
$file = escapeshellcmd($file);

exec("mogrify -resize {$filewidth}x{$fileheight}! \"$file\"");
?>

答案 1 :(得分:0)

$file=str_replace(array('(',')'),array('\\(','\\)'),$file);