PHP は非常に人気のあるプログラミング言語であり、その組み込み関数とライブラリにより、データの処理や乱数と配列の生成が非常に簡単になります。この記事では、PHP を使用してランダム配列を生成する方法について説明します。
乱数の生成
PHP では、PHP の組み込み関数 rand()
および mt_rand()
を使用して乱数を生成できます。使用方法は次のとおりです。
rand()
関数 rand()
この関数は使用できます。以下に示すように、指定された 2 つの数値の間の乱数を生成します。
$number = rand(0,10); // 生成一个介于0和10之间的随机数
ここでの 0
と 10
は範囲の境界であり、調整できます。必要に応じて。この関数の欠点の 1 つは、この関数の実装方法がコンピューターのクロック サイクルのオン/オフを使用して生成を「ランダム化」することによって行われるため、生成される乱数が「真のランダム」ではないことです。
mt_rand()
関数 mt_rand()
関数は rand()
関数です 改善されましたバージョンでは、その使用がより広範囲に行われており、推奨されています。より高度な数学的アルゴリズムを使用して乱数を生成します。使用方法は次のとおりです。
$number = mt_rand(0,10); // 生成一个介于0和10之间的随机数
は rand()
関数と同じです。0
と 10
は範囲境界です。乱数を生成するため。
ランダム配列の生成
ランダム配列の生成は、複数の乱数を生成して配列に格納する方法を考慮する必要があるため、乱数を生成するよりも複雑です。ランダム配列を生成する方法はいくつかあります。
for
ループ ステートメントを使用する for
ループ ステートメントを使用するのが最も効果的です。ランダム配列を生成する基本的な方法は、指定された回数だけループして乱数を生成し、各乱数を配列に追加することです。コードは次のとおりです。
$array = array(); // 声明一个空数组 for($i=0; $i<10; $i++){ // 迭代10次生成10个随机数,并添加到数组中 $array[] = mt_rand(0,10); // 生成随机数,并添加到数组中 }
上記のコードでは、配列 array
は最初は空であり、mt_rand()
関数を使用して乱数を生成します。各ループを作成し、それらを配列に追加します。
array_fill()
関数の使用array_fill()
この関数を使用すると、指定した数の同一のデータを生成できます。値配列を使用するため、for
ループ ステートメントよりも簡潔で効率的です。コードは次のとおりです。
$array = array_fill(0, 10, mt_rand(0,10)); // 生成一个包含10个随机数的数组
上記のコードでは、配列 array
に 10 個の乱数が含まれており、各乱数の範囲は 0 ~ 10
です。間。
array_map()
関数の使用 array_map()
この関数は、配列の各要素で使用できます。通常、配列内の各要素に対してコールバック関数を実行し、オプションの 2 番目の引数で指定された複数の配列引数のリストから配列要素を操作します。ただし、ここではこの機能を利用してランダムな配列を生成できます。例は次のとおりです。
$array = array_map(function(){ return mt_rand(0,10); }, array_fill(0, 10, null)); // 生成一个包含10个随机数的数组
上記のコードでは、無名関数を使用して乱数を生成し、「array_fill()」関数によって生成された配列の各要素に適用します。
概要
この記事では、PHP を使用してランダム配列を生成する 3 つの方法を紹介しました。for
ループ ステートメントを使用する方法と、array_fill()## を使用する方法です。関数を作成し、
array_map() 関数を使用します。これらの方法は実現可能で効果的です。これらのメソッドを使用すると、任意の長さと範囲のランダムな配列を簡単に生成できます。ただし、乱数の性質により、アルゴリズムや実装が異なると、乱数の生成に一定の偏りがある可能性があることに注意してください。したがって、ランダム配列を生成するときは、適切な乱数生成アルゴリズムの選択に注意してください。
以上がPHPを使用してランダムな配列を生成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。