今回ご紹介する素敵tipsは、動的に変数名を変える方法です。
もう少し詳しく言うと、
変数名に後から文字列を付け加えて新しい変数名にする方法です。
とにかく、覚えていて損はありませんので引続きご覧下さい!
広告を表示する場合、同じ広告ばかりだと飽きちゃいますし、
広告主が複数いた場合、1社だけ優遇するわけにはいきませんよね?
そんな時、思い立つのが!ランダム表示!
例に出した画像は、アドセンスですがこの部分をランダムに表示できたら
多くの広告を表示出来るし~なんか素敵!
DBなど利用せず、phpのみでどうにかするための方法は以下のとおり!
1,変数に広告を代入し、変数に連番を付ける
2,広告数に応じた数字をランダムに取得
3,ランダムに取得した数字を変数名に加える・追加する
4,表示する
問題は、3の変数名に加える・追加するところですよね?
変数の値を連結するだけなら下記の方法で問題ありません。
$abc = "abc"; $defg = "defg"; echo $abc.$defg;
変数名に文字列を加える・追加するには別の方法が必要になります。
つまりは、下記のようにしたいわけです。
$hyoujisitai_01 = "表示したい01"; $hyoujisitai_02 = "表示したい02"; $suuji_01 = "01"; $suuji_02 = "02"; $hyoujisitai_(この部分に$suuji_01か$suuji_02の値を加えたい)
変数名に変数の値を加える・追加する方法は下記です!
$hyoujisitai_01 = "表示したい01"; $suuji_01 = "01"; echo "${'hyoujisitai_'.$suuji_01}";
これで、hyoujisitai_の後ろに$suuji_01の値、01が加わり
$hyoujisitai_01として処理されるようになります。
{}の中は変数名ですよという宣言になります。
変数名をランダムに変更したい場合は、rand関数を使います。下記が例です。
$hyoujisitai_1 = "表示したい1"; $hyoujisitai_2 = "表示したい2"; $suuji_1 = "1"; $suuji_2 = "2"; $random_no = rand(1,2); echo "${'hyoujisitai_'.$random_no}";
これで、1~2の間の数字がランダムに選ばれ、変数名に加えられて処理されます。
この方法を使えば楽にランダム表示が可能になります(`・ω・´)ゞ
お役に立ちましたでしょうか?