2

Planets.png を Planets.jpg に変換するコード

<?php 
exec("convert planets.png planets.jpg");
?>

空白のページを表示するだけでは機能しません。

phpinfo() に表示されているように、imagemagick をインストールしましたここを表示

そのimagemagickコードを実行するために残っている他の構成はここにありますか?

エラーメッセージ

[Sat Jul 28 20:16:11 2012] [error] [client 127.0.0.1] PHP 1. {main}() D:\\wamp\\www\\test\\into.php:0 Invalid Parameter - planets.jpg 
4

3 に答える 3

8

これが、エラー メッセージを表示することが重要である理由です。それを使って答えを探すことができます。

同じ名前の ImageMagick プログラムではなく、convert.exe という Microsoft Windows プログラムを誤って実行してしまいました。Windows の convert.exe プログラムは、システム ブート ディスクを MS-DOS の「FAT」フォーマットから NTFS フォーマットに変換するために使用されます。そのため、システムの存続期間中に一度し​​か使用できません。ソース

ソリューション

あなたはできる

  • MS convert.exe または ImageMagick convert.exe の名前を変更します。
  • PATH を修正して、ImageMagick の convert.exe を MS convert.exe の前に置きます。
  • http://savage.net.au/ImageMagick/html/install-convert.htmlで説明されているように、Windows レジストリを編集します。
于 2012-07-28T15:24:46.453 に答える
3
exec("convert planets.png planets.jpg");

これは、コマンド プロンプト ウィンドウを開いてこれを実行するのとまったく同じです。

また、@Elzo が指摘したようにconvert.exe、組み込みの実行可能ファイルであるため、実行可能ファイルのパス全体を指定する必要があります。(どちらかの実行可能ファイルの名前を変更するのではなく、これをお勧めします)。

exec("\"C:\\Program Files\\..\\convert.exe\" planets.png planets.jpg");
于 2012-07-28T15:25:02.347 に答える
-3

PHP の ImageMagic 拡張機能は、ImageMagics の「convert」コマンドとは何の関係もありません。別ソフトです。システムにコマンドがインストールされていることを確認しますか? シェルで手動で使用してみてください。

phpinfo() 内に表示されるのは、ImageMagic 拡張機能です。それは「変換」cliユーティリティをもたらさず、あなたが試みるものとはまったく異なる方法で使用する必要があります.

于 2012-07-28T15:18:03.567 に答える