Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk memilih beberapa elemen secara rawak daripada tatasusunan melalui PHP

Bagaimana untuk memilih beberapa elemen secara rawak daripada tatasusunan melalui PHP

PHPz
Lepaskan: 2023-04-17 15:09:09
asal
1242 orang telah melayarinya

Apabila menulis atur cara PHP, anda selalunya perlu melakukan operasi rawak pada tatasusunan, seperti memilih beberapa elemen secara rawak daripada tatasusunan. Artikel ini akan memperkenalkan cara melaksanakan fungsi ini melalui bahasa PHP.

1 Gunakan fungsi array_rand

Fungsi array_rand boleh secara rawak memilih bilangan elemen tertentu daripada tatasusunan. Prototaip fungsinya adalah seperti berikut:

array array_rand ( array $array , int $num )
Salin selepas log masuk

Antaranya, parameter $array mewakili tatasusunan elemen yang akan dipilih, dan parameter $num mewakili nombor yang akan dipilih. Fungsi ini mengembalikan tatasusunan yang mengandungi kunci elemen tatasusunan yang dipilih secara rawak.

Sebagai contoh, kami mempunyai tatasusunan berikut:

$data = array(
    'apple',
    'banana',
    'orange',
    'pear',
    'peach',
    'grape'
);
Salin selepas log masuk

Kami mahu memilih 3 elemen secara rawak daripada tatasusunan ini dan mengembalikan nama kunci elemen yang dipilih. Kod boleh ditulis seperti ini:

$keys = array_rand($data, 3);

print_r($keys);
Salin selepas log masuk

Hasil output ialah:

Array
(
    [0] => 4
    [1] => 2
    [2] => 0
)
Salin selepas log masuk

Ini bermakna elemen dengan nama kunci 4, 2 dan 0 dipilih. Kita boleh mengakses elemen ini melalui lintasan gelung, seperti:

foreach ($keys as $key) {
    echo $data[$key] . '<br>';
}
Salin selepas log masuk

Hasil output ialah:

peach
orange
apple
Salin selepas log masuk

2. Gunakan fungsi shuffle dan array_slice

Satu lagi cara untuk memilih elemen secara rawak daripada tatasusunan adalah dengan mengocok susunan tatasusunan dan kemudian mengeluarkan beberapa elemen pertama. Langkah-langkah khusus adalah seperti berikut:

  1. Gunakan fungsi shuffle untuk mengganggu susunan tatasusunan.
$data = array(
    'apple',
    'banana',
    'orange',
    'pear',
    'peach',
    'grape'
);

shuffle($data);
Salin selepas log masuk
  1. Gunakan fungsi array_slice untuk mengeluarkan beberapa elemen pertama.
$subset = array_slice($data, 0, 3);

print_r($subset);
Salin selepas log masuk

Hasil output ialah:

Array
(
    [0] => orange
    [1] => grape
    [2] => apple
)
Salin selepas log masuk

3 Gunakan fungsi rand

Jika anda ingin memilih unsur secara rawak daripada tatasusunan, anda juga boleh menggunakan fungsi rand. Langkah-langkah khusus adalah seperti berikut:

  1. Dapatkan jumlah bilangan elemen tatasusunan.
$count = count($data);
Salin selepas log masuk
  1. Gunakan fungsi rand untuk menjana nombor rawak antara 0 dan jumlah bilangan elemen tatasusunan tolak 1.
$index = rand(0, $count - 1);
Salin selepas log masuk
  1. Mengembalikan elemen tatasusunan yang sepadan dengan nama kunci.
echo $data[$index];
Salin selepas log masuk

Ini melaksanakan fungsi memilih unsur secara rawak daripada tatasusunan.

Ringkasan

Artikel ini memperkenalkan tiga kaedah memilih unsur secara rawak daripada tatasusunan, termasuk menggunakan array_rand, shuffle dan array_slice, fungsi rand. Kaedah khusus boleh dipilih mengikut keperluan khusus, dan prestasi kaedah yang berbeza juga berbeza-beza. Dalam perkembangan sebenar, adalah disyorkan untuk memilih kaedah yang paling sesuai mengikut situasi tertentu.

Atas ialah kandungan terperinci Bagaimana untuk memilih beberapa elemen secara rawak daripada tatasusunan melalui PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan