勉強したことのメモ

webプログラマ見習いが勉強したことのメモ。

登録画像orノーイメージ画像の振り分け表示

      2014/07/03

<?
/*
画像が登録されていれば当該画像を読み出し、
登録されていない場合はノーイメージ画像を読み出す。
上司から頂いたソースを解析。

php?code=○○○」で投げて使う。

同じ階層に「ming」フォルダを作成し、その中に画像を入れておく。
*/
$content_type = "jpeg";
//クエリを取得
$code = $_GET['code'];
//ファイルパスの指定。絶対パスだとfile_exists関数が通らないので相対パス指定。

//ここはハマったところなので注意する。
$filepath = "../image_change/ming/";
$memfile = $filepath.$code;
$img = "";

//画像拡張子を配列に入れる。
$exts = array(
"jpg"=>"jpeg",
"JPG"=>"jpeg",
"png"=>"png",
"PNG"=>"png",
"gif"=>"gif",
"GIF"=>"gif",
"jpeg"=>"jpeg",
"JPEG"=>"jpeg",
"bmp"=>"bmp",
"BMP"=>"bmp"
);

//ループでまわして[画像フォルダパス/code.画像拡張子]にて
//画像パスフォルダ内にファイルが存在するかチェック。
//存在すれば画像情報を$imgに入れる。
foreach ($exts as $key => $val) {
if (file_exists($memfile.".".$key)) {
$img = file_get_contents($memfile.".".$key);
$content_type = $val;
break;
}
}

//画像パスフォルダ内に存在しない場合はノーイメージ画像情報を
//$imgに入れる。
if ($img == "") {
$img = file_get_contents($filepath."noimage.jpg");
}

//ヘッダー情報を送信。$content_typeはデフォだとjpg
//検索してヒットしてた場合は当該の拡張子を入れてる。
header("Content-type: image/".$content_type);

//画像情報を出力。画像があれば出力され、無い場合はノーイメージが出力
echo $img;

 - PHP, 画像

  関連記事

PHPでcharset

header("Content-Type: text/html; charset ...

joinとimplode

PHPで配列を結合する時に使う関数。joinとimplode。 元々はなんかのマ ...

PHPでユニークな文字列の作成

PHPでユニークな文字列を作成したかった。MySQLとかのオートインクリメントの ...

PHPで複数の画像やテキストファイルをzipファイルとしてダウンロードさせる

PHPで画像ファイルやテキストファイルをzip圧縮して、ダウンロードさせたかった ...

PHPのshort_open_tagのデメリット

PHPをHTML内に書くときは、書く速さと見易さ重視で、   [cra ...

CodeIgniterで共通の変数と定数を設定する

CodeIgniterで共通する配列が入った変数と、定数を設定したかった。以下に ...

PHPで縦横どちらかが指定の長さを超えた場合、比率を保ったままリサイズ

PHPで縦横どちらかが指定の長さを超えた場合、 比率を保ったままリサイズしたかっ ...

PHPで配列かどうかを調べる

配列か否かを調べたいケースがあり、確認すると ばっちりそのままの関数発見。 is ...

isset等、変数を調べる際の注意点

$strがNULLだったり0だったり空文字だったりする場合で、 if($str) ...

mysqldumpが使えないレンタルサーバでMySQLのバックアップ

mysqldumpが使えないレンタルサーバで開発を行うことがあり、尚且つ他社に使 ...