用php GD庫 處理完圖片后 只能將圖片 用 imagejpeg() 輸出 或者寫入一個文件很多時候并不需要這么做 比如要將圖片存入數據庫 就需要把圖片寫入變量保存用 ob_start() 啟用緩存 ob_get_contents()獲取緩存就可以將圖片寫入變量
實例代碼如下:
- <?php
- $imgPath ="圖片地址" ;
- //獲得圖片信息 $imgPath 可以為遠程地址
- list( $srcWidth, $srcHeight, $type ) = getimagesize( $imgPath );
- ...
- switch( $type ) {
- case 1: $imgCreate = 'ImageCreateFromGIF'; break;
- case 2: $imgCreate = 'ImageCreateFromJPEG'; break;
- case 3: $imgCreate = 'ImageCreateFromPNG'; break;
- default: return false;
- }
- $orig = $imgCreate( $imgPath );
- ...
- //開啟緩存
- ob_start();
- //生成圖片
- switch ($type)
- {
- case 1: imagegif($orig); break;
- case 2: imagejpeg($orig); break; // best quality
- case 3: imagepng($orig); break; // no compression
- default: echo ''; break;
- }
- //將圖片存入變量
- $imageCode = ob_get_contents();
- ob_end_clean();
個人不建義把圖片保存在變量 了,這樣會比較浪費資源 ,這里也是測試好玩的哦.
新聞熱點
疑難解答