広告スペース(バナー)
🐘PHP レッスン
基本文法の基礎8▾
データ構造とオブジェクト指向7▾
構文の基本を深める9▾
関数とデータ構造の応用9▾
アルゴリズムとテストの基礎8▾
文字列・数値操作の応用8▾
実務で役立つ機能8▾
レッスン 53 / 68
乱数を生成しよう
このレッスンでは、randとarray_randを使った乱数の生成方法を学び、サイコロやくじ引きのようなプログラムを作れるようになることを目標にします。「PHP 乱数 生成」で調べている方向けです。
rand()やarray_rand()を使うと、ランダムな数や、配列からランダムに1つ選んだ値を得られます。サイコロやくじ引きのようなプログラムを作るときに使います。実行するたびに結果は変わります。
サンプルコードでは、rand(1, 6)で1から6までのサイコロの目を、$choices[array_rand($choices)]という形で「グー・チョキ・パー」のリストからランダムに1つ選んでいます。array_rand()は選ばれた要素そのものではなく、選ばれた添字(インデックス)を返す点に注目してみましょう。
初心者がよくつまずくのが、array_rand()が値ではなくキーを返す点です。$choices[array_rand($choices)]のように、返ってきたキーを使って改めて値を取り出す必要があり、この2段階の流れを理解していないと混乱しやすいポイントです。
random_int()というより安全な乱数生成関数もあり、セキュリティが重要な場面ではそちらが推奨されます。ゲームのシャッフル機能やシミュレーションのサンプリングなど、実務でも幅広く活用される機能です。
📖 お手本コード
✍️ あなたのコード
コードを書いたら「実行する」を押してください
🧪 このサイトではPHPを直接コンパイル・実行できないため、お手本コードと同じ内容を入力できたかをその場で判定します(採点はブラウザ内だけで行われ、どこにも送信されません)。
🎯
ここまでできればゴール達成!
サイコロやくじ引きのような、簡単なランダム要素のあるミニゲームが作れるようになります。
サイコロやくじ引きのような、簡単なランダム要素のあるミニゲームが作れるようになります。
広告スペース(バナー)
広告スペース(記事内)