PHP melaksanakan tatasusunan rawak

WBOY
Lepaskan: 2023-05-23 11:31:07
asal
625 orang telah melayarinya

PHP ialah bahasa pengaturcaraan yang digunakan secara meluas dalam pembangunan web dan pengaturcaraan sebelah pelayan. Dalam PHP, tatasusunan ialah struktur data yang sangat biasa digunakan untuk menyimpan set data. Dalam sesetengah senario perniagaan, adalah perlu untuk menjana tatasusunan rawak, yang boleh meningkatkan kecekapan dan kebolehpercayaan program pada tahap tertentu. Artikel ini akan memperkenalkan cara menjana tatasusunan rawak dalam PHP dan beberapa senario aplikasi biasa.

Jana tatasusunan rawak

Dalam PHP, menjana tatasusunan rawak ialah perkara yang sangat mudah. Nombor rawak boleh dijana dengan menggunakan fungsi rand() dan kemudian disimpan dalam tatasusunan. Fungsi rand() boleh menerima dua parameter: parameter pertama mewakili nilai minimum nombor rawak, dan parameter kedua mewakili nilai maksimum nombor rawak.

Berikut ialah contoh kod:

$length = 10;
$min = 1;
$max = 100;
$arr = array();
for ($i = 0; $i < $length; $i++) {
    $arr[] = rand($min, $max);
}
print_r($arr);
Salin selepas log masuk

Kod ini akan menjana tatasusunan panjang 10, di mana setiap elemen mempunyai nilai yang dijana secara rawak antara 1 dan 100. Gunakan fungsi print_r() untuk mencetak kandungan tatasusunan:

Array ( [0] => 36 [1] => 45 [2] => 33 [3] => 100 [4] => 4 [5] => 26 [6] => 23 [7] => 38 [8] => 95 [9] => 77 )
Salin selepas log masuk

Dengan cara ini, kebanyakan keperluan penjanaan tatasusunan rawak boleh dipenuhi. Walau bagaimanapun, apabila anda perlu menjana tatasusunan rawak yang lebih khusus, anda perlu menggunakan beberapa teknik lain.

Jana tatasusunan rawak tersusun

Kadangkala, anda perlu menjana tatasusunan rawak tertib. Ini bersamaan dengan menukar cara menjana nombor rawak, dan ia tidak sukar untuk dilaksanakan. Tatasusunan rawak yang dijana boleh diisih menggunakan fungsi sort() dalam PHP untuk menjana tatasusunan rawak tersusun.

Berikut ialah contoh kod:

$length = 10;
$min = 1;
$max = 100;
$arr = array();
for ($i = 0; $i < $length; $i++) {
    $arr[] = rand($min, $max);
}
sort($arr);
print_r($arr);
Salin selepas log masuk

Kod ini akan menjana tatasusunan rawak tersusun dengan panjang 10, di mana nilai setiap elemen dijana secara rawak antara 1 dan 100. Tatasusunan boleh diisih menggunakan fungsi sort():

Array ( [0] => 2 [1] => 9 [2] => 20 [3] => 41 [4] => 54 [5] => 59 [6] => 80 [7] => 84 [8] => 86 [9] => 91 )
Salin selepas log masuk

Tapis elemen pendua dalam tatasusunan rawak

Apabila menjana tatasusunan rawak, beberapa elemen pendua sering muncul. Jika anda perlu menapis elemen pendua ini, anda boleh menggunakan fungsi array_unique() dalam PHP.

Berikut ialah contoh kod:

$length = 10;
$min = 1;
$max = 100;
$arr = array();
for ($i = 0; $i < $length; $i++) {
    $arr[] = rand($min, $max);
}
$arr = array_unique($arr);
print_r($arr);
Salin selepas log masuk

Kod ini akan menjana tatasusunan rawak panjang 10, di mana setiap elemen mempunyai nilai yang dijana secara rawak antara 1 dan 100. Gunakan fungsi array_unique() untuk menapis elemen pendua dalam tatasusunan:

Array ( [0] => 81 [1] => 24 [2] => 60 [3] => 89 [4] => 28 [5] => 31 [6] => 22 [7] => 38 [8] => 92 [9] => 85 )
Salin selepas log masuk

Ekstrak elemen tatasusunan secara rawak

Kadangkala, anda perlu memilih beberapa elemen secara rawak daripada tatasusunan. Dalam PHP, anda boleh menggunakan fungsi array_rand() untuk mencapai fungsi ini. Fungsi array_rand() boleh menerima dua parameter: parameter pertama mewakili tatasusunan untuk dijadikan sampel secara rawak, dan parameter kedua mewakili bilangan elemen yang akan diambil sampel.

Berikut ialah contoh kod:

$arr = array('apple', 'banana', 'orange', 'grape', 'watermelon');
$random_keys = array_rand($arr, 3);
$random_items = array();
foreach ($random_keys as $key) {
    $random_items[] = $arr[$key];
}
print_r($random_items);
Salin selepas log masuk

Kod ini akan mengekstrak 3 elemen secara rawak daripada tatasusunan $arr dan menyimpannya ke dalam tatasusunan $random_items:

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

Kocok susunan unsur tatasusunan secara rawak

Kadangkala, anda perlu mengocok unsur dalam tatasusunan secara rawak. Dalam PHP, anda boleh menggunakan fungsi shuffle() untuk mencapai fungsi ini. Fungsi shuffle() akan merombak susunan elemen dalam tatasusunan dan menjana tatasusunan rawak.

Berikut ialah contoh kod:

$arr = array('apple', 'banana', 'orange', 'grape', 'watermelon');
shuffle($arr);
print_r($arr);
Salin selepas log masuk

Kod ini akan merombak susunan elemen dalam tatasusunan $arr:

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

Ringkasan

Dalam PHP , menjana tatasusunan rawak adalah perkara yang sangat mudah. Anda boleh menggunakan fungsi rand() dan pernyataan gelung untuk menjana nombor rawak dan menyimpannya dalam tatasusunan. Kadangkala, anda perlu menjana tatasusunan rawak tersusun atau menapis elemen pendua dalam tatasusunan Anda boleh menggunakan fungsi sort() dan fungsi array_unique() untuk mencapai ini. Jika anda perlu memilih beberapa elemen secara rawak daripada tatasusunan atau mengocok susunan elemen tatasusunan secara rawak, anda boleh menggunakan fungsi array_rand() dan fungsi shuffle() untuk mencapai ini. Teknik ini boleh membantu pembangun mengendalikan pelbagai senario perniagaan dengan lebih cekap.

Atas ialah kandungan terperinci PHP melaksanakan tatasusunan rawak. 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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!