勉強したことのメモ

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

独自タグからタグへの変換function

      2014/07/03

独自タグは##IMG1##みたいな感じ。

画像ファイル名は「ファイルパス/seq_独自タグの数字.拡張子」になる。

例)aaa/bbb/ccc/image/12_1.png

■image.php

<?php

//画像用変数
$exts = array(
1=>".jpg",
2=>".png",
3=>".gif");
$image_tags = array(
1=>"##IMG1##",
2=>"##IMG2##"
);
$file_path = 'aaa/bbb/ccc/images'; //ファイルパス
$image_limit = 2; //画像のアップ枚数上限

//独自タグ⇒imgタグ変更用function
function Image_change($file_path, $exts, $seq_check, $image_limit, $body_check, $image_tags) {
for($i=1; $i<=$image_limit; $i++){ //独自タグの回数分ループをまわす
$image_check = $file_path . '/' . $seq_check . '_' . $i; //画像パスの拡張子より前の部分を$image_checkに代入
if(strpos($body_check,$image_tags[$i]) !== false){ //独自タグがあった場合
for($x=1; $x<=3; $x++){ //jpg or png or gifの選択
$image_check2 = $image_check . $exts[$x]; //ファイルパスを完全に指定
if (file_exists($image_check2)){ //ファイルバスが存在した場合
echo $image_tags[$i] .'->'. $image_check2.'<br>';
$body_check = str_replace($image_tags[$i], "<img src='./images/{$seq_check}_{$i}${exts[$x]}'>" ,$body_check);
}
}
}
}
return $body_check;
}

■index.php

$sql = "
SELECT *
FROM image_test;
";
$row = mysql_query($sql) or die('error2');
while($rs = mysql_fetch_array($row)) {
$d_seq = $rs['seq'];
$seq_check = $rs['seq'];
$d_name
= $rs['is_name'];
$body_check = $rs['is_body'];
$d_body[] = Image_change($file_path, $exts, $seq_check, $image_limit, $body_check, $image_tags);
}

 - PHP, 画像

  関連記事

images
Cannot re-assign auto-global variableのエラー

PHPバージョンアップに伴い「Fatal error: Cannot re-as ...

images
時間と数字のフォーマット

教わったのでメモ。 ・時間の整形 strtotime() 例) $ymd = ' ...

images
PHPからMySQLにシリアライズしたデータを格納

アンケートフォームみたいなのがあって、 今後も定期開催し、尚且つ質問内容は増減す ...

images
PHPで配列を値で検索、破棄

PHPの配列で特定の値が入っていれば それを破棄したいということがあった。 ・u ...

images
カンマ区切りの文字列で最後のカンマを排除

文字列をカンマ区切りにして、カンマを取り外して 配列にする際、頭もしくはお尻につ ...

images
PHPのログイン認証をPEAR::Authで実装する

PHPのシステムである程度ちゃんとしたログインシステムが必要になった。今までログ ...

images
PHPでファイルをダウンロードさせる

集計ページみたいなんがあった。その集計ページを CSV化したいと言われた。 ■ソ ...

images
フォーム管理画面テンプレPHP

<?php ini_set( 'display_errors', 0 ); ...

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

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

images
画像をアップロードすると複数サムネイルを生成する方法

フォームで画像をアップロードすると、予め定めておいた大中小のサイズでサムネイル画 ...