ホームページ  >  記事  >  バックエンド開発  >  PHPでランダム配列を作成する方法

PHPでランダム配列を作成する方法

PHPz
PHPzオリジナル
2023-04-19 09:20:371277ブラウズ

PHP では、rand() 関数を使用して乱数を生成できます。ただし、ランダムな配列を生成したい場合は、他の技術と方法が必要です。この記事では、rand() 関数の使用、range() 関数の使用、shuffle() 関数の使用など、ランダム配列を作成するいくつかの方法を紹介します。

方法 1: rand() 関数を使用する
PHP では、rand() 関数を使用して乱数を生成できます。基本的な使用例を次に示します。

$number = rand(0, 10); // 生成0到10之间的随机数

ランダムな配列を生成したい場合は、ループを使用して各要素を生成できます。以下に例を示します。

$array = array(); // 创建一个空数组
for($i = 0; $i < 10; $i++) {
  $array[] = rand(0, 100); // 向数组中添加一个随机数
}

この例では、for ループを使用して 10 回ループし、毎回 0 ~ 100 の乱数を配列に追加します。このアプローチを使用すると、指定された長さとランダムな値を持つ配列を作成できます。

方法 2: range() 関数を使用する
PHP では、range() 関数を使用して、指定された範囲内の数値の配列を生成できます。以下は、 range() 関数を使用して 0 ~ 9 を含む数値配列を生成する例です。

$numbers = range(0, 9); // 生成包含0到9的数字数组

ランダムな配列を生成したい場合は、shuffle() 関数を使用して数値をランダム化できます。配列の並べ替え。以下は、 shuffle() 関数を使用してランダムな配列を生成する例です。

$numbers = range(0, 9); // 生成包含0到9的数字数组
shuffle($numbers); // 对数字数组进行随机排序

この例では、 range() 関数を使用して 0 から 9 までの数値の配列を生成し、次を使用します。 shuffle() 関数を使用すると、この配列はランダムにソートされます。このアプローチを使用すると、指定された範囲とランダムな順序を持つ配列を作成できます。

方法 3: shuffle() 関数を使用する
前の例では、shuffle() 関数を使用して数値の配列をランダムに並べ替える方法を紹介しました。ただし、この関数を使用して連想配列をランダムに並べ替えることもできます。 shuffle() 関数を使用してランダムな連想配列を生成する例を次に示します。

$colors = array(
  "red" => 1,
  "green" => 2,
  "blue" => 3,
  "yellow" => 4
); // 创建一个包含颜色和数字的关联数组

$keys = array_keys($colors); // 获取关联数组的键

shuffle($keys); // 对键数组进行随机排序

$random_colors = array(); // 创建一个空数组
foreach($keys as $key) {
  $random_colors[$key] = $colors[$key]; // 根据键数组中的顺序向新数组中添加元素
}

この例では、色と数値を含む連想配列を作成し、array_keys() 関数を使用して連想配列キー。これらのキーを新しい配列に保存し、shuffle() 関数を使用して新しい配列をランダムに並べ替えます。最後に、ループを使用して、元の配列から新しい配列に要素をランダムな順序で追加します。このアプローチを使用すると、ランダムな順序で連想配列を作成できます。

概要
PHP でランダム配列を作成する方法はたくさんあります。 rand() 関数を使用して乱数を生成し、ループを使用してこれらの数値を配列に追加できます。 range() 関数を使用して数値の配列を生成し、 shuffle() 関数を使用してそれをランダムに並べ替えることもできます。最後に、 shuffle() 関数を使用して連想配列をランダムに並べ替え、新しく並べ替えられたキーに基づいて新しい配列を作成することもできます。いずれの方法でも、ランダムな値またはランダムな順序で配列を作成できます。

以上がPHPでランダム配列を作成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。