ホームページ > バックエンド開発 > PHPの問題 > PHPプログラミング言語を使用して配列の順序をシャッフルする方法

PHPプログラミング言語を使用して配列の順序をシャッフルする方法

PHPz
リリース: 2023-04-20 10:59:36
オリジナル
755 人が閲覧しました

PHP は、習得と使用が簡単で、広く使用されているサーバーサイド スクリプト言語です。 PHP では、配列の順序を乱す操作など、配列を処理する必要があることがよくあります。この記事では、PHP プログラミング言語を使用して配列をシャッフルする方法を説明します。

PHP では、shuffle() 関数を使用して配列の順序を乱すことができます。 shuffle() 関数は任意の配列で使用でき、シャッフルされた配列を返します。以下は配列をシャッフルする例です:

<?php
$numbers = array(1, 2, 3, 4, 5);
shuffle($numbers);
print_r($numbers);
?>
ログイン後にコピー

上の例では、 shuffle() 関数を使用して配列 $numbers の順序をシャッフルします。出力は次のようになります。

Array
(
    [0] => 3
    [1] => 4
    [2] => 1
    [3] => 5
    [4] => 2
)
ログイン後にコピー

出力からわかるように、元の数値順序が崩れています。

shuffle() 関数は元の配列の順序を変更することに注意してください。つまり、関数の実行後、元の配列の順序が崩れます。元の配列の順序を変更したくない場合は、最初に配列をコピーしてシャッフルし、元の配列への影響を避けることができます。以下は、配列のコピーをシャッフルする方法を示す例です:

<?php
$numbers = array(1, 2, 3, 4, 5);
$numbers_copy = $numbers; // 复制数组
shuffle($numbers_copy);
print_r($numbers_copy);
?>
ログイン後にコピー

上の例では、まず配列 $numbers を別の配列 $numbers_copy にコピーし、次に $numbers_copy で shuffle() 関数を実行します。 $numbers 配列の順序が変更されないように配列します。

shuffle() 関数に加えて、PHP には別の関数 array_rand() も用意されており、配列内の 1 つ以上のキー名をランダムに返すことができます。以下は、array_rand() 関数を通じて配列要素をランダムに返す例です。

<?php
$fruits = array("apple", "banana", "orange", "pear", "cherry");
$random_keys = array_rand($fruits, 2);
echo $fruits[$random_keys[0]] . PHP_EOL;
echo $fruits[$random_keys[1]] . PHP_EOL;
?>
ログイン後にコピー

上の例では、まず $fruits 配列を定義し、次に array_rand() 関数を使用して 2 つのキーをランダムに返します。そこから名前を取得し、最後に対応する要素の値を出力します。出力結果は次のようになります。

orange
banana
ログイン後にコピー

出力結果からわかるように、array_rand() 関数は配列要素のキー名をランダムに返します。

上記は、PHP で配列の順序を乱す方法です。 shuffle() 関数でも array_rand() 関数でも、配列の順序を簡単にシャッフルして、より多様で興味深い Web アプリケーションを作成するのに役立ちます。

以上がPHPプログラミング言語を使用して配列の順序をシャッフルする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート