PHPで変数名を組み合わせて使う
PHPでちょこちょこ、Web更新の手間を省いているのですが、
自分の備考も兼ねて、メモ_φ(・_・
同じ変数名を使って、1,2,3…と連番にしたい時って無いですか。
例えば$name1,$name2,$name3…とか、
でも、ケースによって表示順を変えたい場合、面倒ですよね。
そこで、こんなソースを書きました。
/* 最大表示件数 ***************************/
$content = 3;
/* 表示順 *********************************/
$alfa = 1;
$bravo = 2;
$charlie = 3;
/* $alfa **********************************/
${“name_” . $alfa} = “名前”;
${“com_” . $alfa} = “コメント”;
${“url_” . $alfa} = “www.xxxxx.com”;
/********************************** $alfa */
ここの「$alfa」を残りの「$bravo」「$charlie」版も作って、
表示順を変えれば、任意の表示順が出来ます。
<ul>
<?php
for($i = 1; $i < $content + 1; $i++) {
echo ‘<li>’ . “\n”;
echo ‘<a href=”https://’.${“url_”.$i}.'”>’ . “\n”;
echo ‘<div>’.${“shopname_”.$i}.'</div>’ . “\n”;
echo ‘<div>’.${“com_”.$i}.'</div>’ . “\n”;
echo ‘</a>’ . “\n”;
echo ‘</li>’ . “\n”;
}
?>
</ul>
※ソースはサンプルなので、参考までに
これで、設定数分ループが回るので、ここでは3件表示されます。
htmlで毎回ソースを直にいじってるより、工数もミスも減るので良いかなと思ってます。
実際は、最大7件表示出来るようにしつつ、更新時は3件だったり、5件だったりするので、
「$content」で表示件数を任意に設定します。
ここの設定を忘れると、以前の更新内容が表示されるので、
/* $charlie *****************************/
${“name_” . $charlie} = “”;
${“com_” . $charlie} = “”;
${“url_” . $charlie} = “”;
/***************************** $charlie */
このように「空」にしておきます。
空のデータが表示されても、エラーにはならないのですが、
見栄えは良くないので、最大表示件数は忘れずにw
まー、更新時はXamppでローカル表示し、そのソースをベタなhtmlファイルにコピペして、更新なんですが。
仕様で「.php」ファイルをアップ出来ないもんで、面倒くさいっすw