PHP GD ライブラリを使用して画像を処理した後は、imagejpeg() を使用して画像を出力またはファイルに書き込むだけです。たとえば、ファイルを保存する場合は、これを行う必要はありません。画像をデータベースに書き込むには、画像を変数に書き込み、ob_start() で保存してキャッシュ ob_get_contents() を有効にし、キャッシュを取得して変数に画像を書き込む必要があります
コードは次のとおりです |
コードをコピー |
$imgPath ="画像アドレス" ;
//画像情報を取得 $imgPathはリモートアドレスでも可
list( $srcWidth, $srcHeight, $type ) = getimagesize( $imgPath );
...
switch( $type ) {
ケース 1: $imgCreate = 'ImageCreateFromGIF';
ケース 2: $imgCreate = 'ImageCreateFromJPEG';
ケース 3: $imgCreate = 'ImageCreateFromPNG';
デフォルト: false を返します;
}
$orig = $imgCreate( $imgPath );
...
// キャッシュを有効にする
ob_start();
//画像を生成する
スイッチ($type)
{
ケース 1: imagegif($orig);
ケース 2: imagejpeg($orig) // 最高品質 ;
ケース 3: imagepng($orig); // 圧縮なし。
デフォルト: エコーブレイク;
}
//画像を変数に保存します
$imageCode = ob_get_contents();
ob_end_clean();
|
個人的には、画像を変数に保存することはお勧めしません。これはリソースの無駄になります。ここでテストするのも楽しいです。
http://www.bkjia.com/PHPjc/629003.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/629003.html技術記事 php GD ライブラリで画像を処理した後は、画像をファイルに出力または書き込むためにのみ imagejpeg() を使用できます。たとえば、画像を保存する場合は、これを行う必要はありません。データベース、イメージを書き込む必要があります...