勉強したことのメモ

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

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

   

独自タグは##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, 画像

  関連記事

mb_convert_variablesとmb_convert_encodingの違い

両関数の違いについて、引数の場所というか順番が違うだけ? と思ってたけどどうにも ...

PHPで土日祝日及び営業時間を考慮した上で翌○営業日を計算する方法

PHPで翌○営業日を計算したい。例えば本日が2021/04/15で翌5営業日を計 ...

SortableJSを使ってデータの並べ替え&保存

あるシステムを拝見した際にtableタグ内に並んでいる項目をドラッグ&ド ...

PHPで日付の比較

以前に「締切日を設けて、今日の日付と比較して分岐させる」というもので 日付の比較 ...

eval関数について

ちょくちょく見ることがあったeval関数について、 なんとなく分かってきたのでメ ...

PHPバージョンの確認

PHPでバージョンの確認をする際にphpinfo()を 使って調べてたけど、バー ...

preg_matchについて

PHPでのpreg_matchについて教わることがあったのでメモ。 ■参考サイト ...

PHPでメルマガを配信する方法

※2016/04/07追記 1件ずつ小分けで送る方法の記事追加。   ...

PHPとajaxでチャットの作成

■ソース ・index.php <? error_reporting(E_ ...

画像登録用のfunction

<?php /****** 画像アップロード用function 画像送付側 ...