Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mengalih keluar satu atau lebih sel secara rawak daripada tatasusunan dalam PHP

Bagaimana untuk mengalih keluar satu atau lebih sel secara rawak daripada tatasusunan dalam PHP

PHPz
PHPzke hadapan
2024-03-19 11:58:191135semak imbas

Editor PHP Yuzai akan memperkenalkan anda cara mengalih keluar satu atau lebih unit secara rawak daripada tatasusunan. Dalam PHP, anda boleh menggunakan fungsi array_rand() untuk mencapai fungsi ini. Fungsi ini boleh memilih secara rawak satu atau lebih kunci daripada tatasusunan, dan mengembalikan nama kunci dan bukannya nilai Nilai yang sepadan boleh diperolehi melalui nama kunci yang dikembalikan. Melalui fungsi array_rand(), anda boleh dengan mudah melaksanakan operasi mengalih keluar satu atau lebih unit secara rawak daripada tatasusunan, memberikan lebih banyak kemungkinan untuk kerja pembangunan anda.

Cara mengalih keluar satu atau lebih sel secara rawak daripada tatasusunan

Array ialah koleksi yang dipesan digunakan dalam php untuk menyimpan data. Ia terdiri daripada koleksi pasangan nilai kunci, dengan kuncinya ialah pengecam unik dan nilainya ialah data yang disimpan. Mengalih keluar satu atau lebih sel secara rawak daripada tatasusunan ialah operasi biasa dan terdapat beberapa cara untuk melakukannya.

Elemen tunggal:

1. fungsi mt_rand():

$array = [1, 2, 3, 4, 5];
$random_index = mt_rand(0, count($array) - 1);
$random_element = $array[$random_index];

2. fungsi array_rand():

$array = [1, 2, 3, 4, 5];
$random_key = array_rand($array);
$random_element = $array[$random_key];

Pelbagai elemen:

1. fungsi array_slice():

$array = [1, 2, 3, 4, 5];
$num_elements = 3; // 随机取出的元素数量
$random_elements = array_slice($array, 0, $num_elements, true);

2. fungsi shuffle() dan fungsi array_slice():

$array = [1, 2, 3, 4, 5];
shuffle($array); // 打乱数组元素顺序
$num_elements = 3; // 随机取出的元素数量
$random_elements = array_slice($array, 0, $num_elements);

3. Fungsi yang dilaksanakan sendiri:

function random_elements($array, $num_elements) {
$keys = array_rand($array, $num_elements);
$random_elements = array();
foreach ($keys as $key) {
$random_elements[] = $array[$key];
}
return $random_elements;
}

Pertimbangan kecekapan:

  • Untuk tatasusunan yang lebih kecil, fungsi mt_rand()array_rand() lebih cekap.
  • Untuk tatasusunan yang lebih besar, fungsi array_slice()shuffle() lebih cekap kerana ia mengelak daripada merentasi keseluruhan tatasusunan.
  • Jika anda perlu mengalih keluar elemen secara rawak daripada tatasusunan kacau, fungsi array_slice() ialah pilihan yang paling cekap.

Petua Tambahan:

  • mt_srand() Fungsi ini boleh menetapkan nilai benih penjana nombor rawak untuk memastikan hasil yang sama setiap kali ia dilaksanakan.
  • Fungsi
  • array_values() boleh menukar tatasusunan bersekutu kepada tatasusunan baharu yang mengandungi nilai sahaja, menjadikannya lebih mudah untuk mengeluarkan unsur secara rawak daripada tatasusunan.

Atas ialah kandungan terperinci Bagaimana untuk mengalih keluar satu atau lebih sel secara rawak daripada tatasusunan dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:lsjlt.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam