アクセスするたびに表示内容が変わるページ

トップ > PHP入門 > アクセスするたびに表示内容が変わるページ

目次

広告

WADAX
安心の365日電話サポート付きレンタルサーバーです。
ロリポップ!
月額263円からのレンタルサーバー。マニュアルも充実しています。

プログラムの概要

rand 関数を使用すれば、一定範囲の数値をランダムに取得することができます。

これを配列と組み合わせれば、アクセスするたびに表示内容が変わるページを作成することができます。

プログラムの概要

アクセスするたびに表示内容が変わるページ

アクセスするたびに表示内容が変わるページは、以下のようになります。今回は「大吉」「中吉」「小吉」「吉」「末吉」「凶」「大凶」のいずれかがランダムに表示されるようにしています。

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>ランダムメッセージ</title>
</head>
<body>
<p>今日のあなたの運勢は「<?php

$fortune = array(
  "大吉",
  "中吉",
  "小吉",
  "吉",
  "末吉",
  "凶",
  "大凶"
);

$count  = count($fortune);
$random = rand(0, $count - 1);

echo $fortune[$random];

?>」です。</p>
</body>
</html>

まず最初に、配列 $fortune に「大吉」「中吉」といったメッセージを代入しています。

次に count($fortune) として配列の要素数を取得しています。上のコードの場合は $count7 という数値が格納されます。

PHPではランダムな数値を取得したければ rand 関数を使用します。使い方は以下のとおりです。

rand(最小値, 最大値)

例えば

<?php

echo rand(2, 7)

?>

と書けば、2~7の数値がランダムで表示されます。今回の場合は、$random に0~6の数値がランダムに格納されます。

後は $fortune[$random] と書けば、$random0 のときは $fortune[0]$random4 のときは $fortune[4]$random6 のときは $fortune[6] となります。

つまり、「大吉」や「末吉」「大凶」といったメッセージが echo によって表示されます。

この仕組みを利用すれば、例えば「広告バナーをランダムに表示させる」といったページを作成することもできます。