getimagesize — 画像サイズを取得します
説明
array getimagesize ( string $filename [, array &$imageinfo ] )
getimagesize() 関数は、GIF、JPG、PNG、SWF、SWC、PSD、TIFF、BMP、IFF、JP2、 JPX、JB2、JPC、XBM、または WBMP 画像ファイルのサイズ。通常の HTML ファイルの タグで使用できるファイル タイプと高さ/幅のテキスト文字列とともに画像のサイズを返します。 。
filename で指定された画像にアクセスできない場合、または有効な画像ではない場合、getimagesize() は FALSE を返し、E_WARNING レベルのエラーを生成します。
注: JPC、JP2、JPX、JB2、XBM、および WBMP のサポートは、PHP 4.3.2 以降で利用可能です。 SWC のサポートは PHP 4.3.0 以降で利用可能です。 TIFF のサポートは PHP 4.2.0 で追加されました。
注: JPEG 2000 のサポートは PHP 4.3.2 で追加されました。 JPC と JP2 は異なる色深度コンポーネントを持つことができることに注意してください。この場合、「ビット」の値は、検出される最大のビット深度です。さらに、JP2 ファイルには複数の JPEG 2000 コード ストリームが含まれる場合があり、その場合、getimagesize() はファイルの最上位で見つかった最初のコード ストリームの値を返します。
注: この機能には GD イメージ ライブラリは必要ありません。
4 つのセルを含む配列を返します。インデックス 0 には画像の幅のピクセル値が含まれ、インデックス 1 には画像の高さのピクセル値が含まれます。インデックス 2 は画像タイプのタグです: 1 = GIF、2 = JPG、3 = PNG、4 = SWF、5 = PSD、6 = BMP、7 = TIFF(インテル バイト オーダー)、8 = TIFF(モトローラ バイト オーダー) )、9 = JPC、10 = JP2、11 = JPX、12 = JB2、13 = SWC、14 = IFF、15 = WBMP、16 = XBM。これらのタグは、PHP 4.3.0 で追加された新しい IMAGETYPE 定数に対応します。インデックス 3 は、「height="yyy" width="xxx"」という内容のテキスト文字列で、IMG タグ内で直接使用できます。
例 #1 getimagesize (file)
コードをコピー コードは次のとおりです:
list($width, $height, $type, $attr) = getimagesize("img/ flag.jpg ");
echo "
";
?>
URL サポートは PHP 4.0.5 で追加されました。
例 #2 getimagesize(URL)
コードをコピー コードは次のとおりです:
$size = getimagesize("http://www.jb51.net/images/logo. gif") ;
// ファイル名にスペースが含まれている場合は、適切にエンコードします
$size = getimagesize("http://www.example.com/gifs/lo go.gif");
?>
for JPG 画像の場合、さらに 2 つのインデックス (チャネルとビット) が返されます。チャネルの値は、RGB イメージの場合は 3、CMYK イメージの場合は 4 です。 bits は色ごとのビット数です。
PHP 4.3.0 以降、他の画像タイプ用のビットとチャネルも存在します。しかし、これらの値は混乱を招く可能性があります。たとえば、GIF は常にピクセルあたり 3 チャネルを使用しますが、アニメーション GIF の場合、ピクセルあたりのビット数はグローバル カラー テーブルから計算できません。
一部の形式には画像が含まれていない場合や、複数の画像が含まれている場合があります。この場合、getimagesize() を使用して画像のサイズを正確に決定できない可能性があります。この時点で、getimagesize() は幅と高さとして 0 を返します。
PHP 4.3.0 以降、getimagesize() は画像の MIME タイプに準拠する追加パラメーター mime も返します。この情報は、HTTP Content-type ヘッダーで正しい情報を送信するために使用できます:
例 3 getimagesize() と MIME タイプ
コードをコピー コードは次のとおりです:
$size = getimagesize($filename);
$fp=fopen($filename, "rb");
if ($size && $fp) {
header("Content-type: {$size['mime']} ");
fpassthru($fp);
exit;
} else {
// error
}
?>
オプションの imageinfo パラメータを使用すると、画像ファイルから拡張情報を抽出できます。現在、これはさまざまな JPG APP ID を連想配列で返します。一部のプログラムは、これらの APP 識別子を使用して画像にテキスト情報を埋め込みます。非常に一般的なのは、APP13 ロゴに埋め込まれた IPTC » http://www.iptc.org/ 情報です。 iptcparse() 関数を使用すると、バイナリ APP13 識別子を解析して読み取り可能な情報にすることができます。
例 #4 getimagesize() は IPTC を返します
コードをコピー コードは次のとおりです:
$size = getimagesize("testimg.jpg", &$info); isset($ info["APP13"])) {
$iptc = iptcparse($info["APP13"])
}
;
phpには画像GDライブラリのgetimagesize()関数があります。
写真の基本情報を取得する機能があります。
getimagesize()
$img=getimagesize('画像ソース');
幅 is=$img[1];
形式 is=$img[2];単純な場合は、次のようにさらに単純にすることもできます
コードをコピーします コードは次のとおりです。
$picpath = 'http://www.jb51.net/images/logo.gif';
$array = getimagesize($picpath) ;
print_r( $array );
echo '画像の幅は'.$array[0];
echo '画像の高さは'.$array[1] '画像の形式は '.$array[2];
//getimagesize を使用してサムネイルを表示する別のコード
コードをコピーします
コードは次のとおりです: function show_thumbnail($file)
{
$max = 200 // サムネイルの最大の幅と高さ
$size = getimagesize($file)
if ( $size[0] $ret = '
'
}
else
{
$k = ( $size [0] >= $size[1] ) ? $size [0] / $max : $size[1] / $max; '
$ ret .= $file.'','','width='.$size[0];
$ret .= ',height='.$ size[1].'')">';
$ ret .= '';
}
return $ret;
}
http://www.bkjia.com/PHPjc/321755.html
www.bkjia.com
truehttp://www.bkjia.com/PHPjc/321755.html技術記事 getimagesize — 画像サイズ指定の取得 array getimagesize ( string $filename [, array