Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cara menggunakan fungsi array_rand dalam PHP untuk mendapatkan berbilang elemen secara rawak dalam tatasusunan

Cara menggunakan fungsi array_rand dalam PHP untuk mendapatkan berbilang elemen secara rawak dalam tatasusunan

PHPz
PHPzasal
2023-06-26 13:46:421011semak imbas

Fungsi array_rand dalam PHP ialah fungsi yang sangat praktikal yang boleh membantu kita mendapatkan elemen secara rawak dalam tatasusunan. Dalam pembangunan sebenar, kita mungkin sering menggunakan fungsi ini untuk mendapatkan satu elemen dalam tatasusunan, tetapi sebenarnya ia juga boleh mendapatkan berbilang elemen.

Apabila menggunakan fungsi array_rand, kita perlu lulus dalam dua parameter: tatasusunan dan bilangan elemen rawak yang akan diperolehi. Sebagai contoh, kami mempunyai tatasusunan yang mengandungi 10 elemen, dan kami perlu mendapatkan 3 elemen secara rawak Anda boleh menggunakan kod berikut:

$arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
$rand_keys = array_rand($arr, 3);

Dalam contoh ini, $rand_keys ialah tatasusunan yang mengandungi 3 nama kunci rawak ini sepadan dengan nama kunci bagi tiga elemen yang dipilih dalam tatasusunan $arr.

Kita boleh menggunakan nama kunci ini untuk mendapatkan nilai elemen yang sepadan, contohnya:

echo $arr[$rand_keys[0]]; // 随机获取到的第一个元素
echo $arr[$rand_keys[1]]; // 随机获取到的第二个元素
echo $arr[$rand_keys[2]]; // 随机获取到的第三个元素

Jika kita ingin mendapatkan elemen rawak dalam tatasusunan bersarang yang mengandungi berbilang elemen, kita juga boleh menggunakan fungsi array_rand. Sebagai contoh, kita mempunyai tatasusunan bersarang berikut:

$arr = [
    ['name' => '小明', 'age' => 18],
    ['name' => '小红', 'age' => 19],
    ['name' => '小刚', 'age' => 20],
    ['name' => '小丽', 'age' => 21],
];

Jika kita perlu mendapatkan dua elemen secara rawak di dalamnya, kita boleh menggunakan kod berikut:

$rand_keys = array_rand($arr, 2);
$rand_arr = [];
foreach ($rand_keys as $key) {
    $rand_arr[] = $arr[$key];
}

Dalam contoh di atas, $rand_keys ialah tatasusunan yang mengandungi dua nama kunci rawak , gunakan foreach untuk merentasi $rand_keys, dapatkan nilai elemen nama kunci yang sepadan, dan bentuk tatasusunan baharu $rand_arr, yang mengandungi dua elemen yang dipilih secara rawak.

print_r($rand_arr);
// 输出结果可能为:
// Array (
//  [0] => Array ( [name] => 小刚 [age] => 20 )
//  [1] => Array ( [name] => 小明 [age] => 18 )
// )

Ringkasnya, menggunakan fungsi array_rand dalam PHP untuk mendapatkan berbilang elemen secara rawak dalam tatasusunan boleh dicapai dengan menghantar bilangan elemen rawak yang akan diperolehi. Unsur rawak yang diperoleh sepadan dengan nama kunci dalam tatasusunan asal, dan kita boleh mendapatkan nilai elemen yang sepadan melalui nama kunci ini. Jika ia adalah tatasusunan bersarang, kita boleh menggunakan nama kunci rawak yang diperolehi oleh setiap traversal untuk mendapatkan nilai elemen yang sepadan dan membentuk tatasusunan baharu.

Atas ialah kandungan terperinci Cara menggunakan fungsi array_rand dalam PHP untuk mendapatkan berbilang elemen secara rawak dalam tatasusunan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn