Rumah > pembangunan bahagian belakang > masalah PHP > Fungsi asli PHP merealisasikan nilai maksimum dalam tatasusunan

Fungsi asli PHP merealisasikan nilai maksimum dalam tatasusunan

WBOY
Lepaskan: 2023-05-07 16:27:08
asal
441 orang telah melayarinya

Dalam pengaturcaraan PHP, tatasusunan ialah jenis data yang sangat biasa. Dalam sesetengah kes kita perlu mencari nilai maksimum atau minimum dalam tatasusunan. Walaupun PHP telah menyediakan satu siri fungsi untuk menyelesaikan tugas ini, seperti fungsi max() dan min(). Walau bagaimanapun, dalam beberapa kes tertentu, fungsi asli perlu digunakan untuk menyelesaikan tugas ini.

Artikel ini akan memperkenalkan cara menggunakan fungsi asli PHP untuk mencari nilai maksimum dalam tatasusunan.

  1. Fungsi asli

Pertama, kita perlu memahami dua fungsi asli: array_shift() dan array_reduce(). Kedua-dua fungsi ini sangat biasa digunakan dalam PHP.

a. array_shift()

Fungsi array_shift() digunakan untuk mengalih keluar elemen pertama daripada tatasusunan dan memadamkan elemen pertama daripada tatasusunan asal. Sintaksnya adalah seperti berikut:

mixed array_shift ( array &$array )
Salin selepas log masuk

Penerangan parameter input:

$array: tatasusunan yang akan dikendalikan.

Perihalan nilai pulangan:

Elemen pertama dikeluarkan, jika tatasusunan kosong, NULL dikembalikan.

Contohnya:

$array = [1, 2, 3, 4, 5];
$first_element = array_shift($array);  // $first_element = 1
Salin selepas log masuk

Selepas pelaksanaan, tatasusunan asal menjadi:

$array = [2, 3, 4, 5];
Salin selepas log masuk

b array_reduce()

array_reduce() fungsi digunakan untuk lelaran. tatasusunan dan kumpulkan elemennya melalui fungsi panggil balik. Sintaksnya adalah seperti berikut:

mixed array_reduce ( array $array , callable $callback [, mixed $initial = NULL ] )
Salin selepas log masuk

Penerangan parameter input:

$array: tatasusunan yang perlu diulang.

$callback: Fungsi panggil balik digunakan untuk mengumpul setiap elemen.

$initial: Pilihan, dihantar masuk sebagai parameter pertama fungsi panggil balik.

Perihalan nilai pulangan:

Hasil pengiraan selepas fungsi panggil balik digunakan pada semua elemen.

Contohnya:

$array = [1, 2, 3, 4, 5];
$sum = array_reduce($array, function($carry, $item) {
    return $carry + $item;
}, 0);  // $sum = 15
Salin selepas log masuk
  1. Proses pelaksanaan

Sekarang kita telah memahami fungsi asli, kita boleh menggunakan fungsi ini untuk mencari nilai maksimum dalam sebuah tatasusunan. Proses khusus adalah seperti berikut:

a Mulakan pembolehubah $max ke elemen pertama tatasusunan

Gunakan fungsi array_shift() untuk mengeluarkan elemen pertama tatasusunan sebagai. Pembolehubah $max, supaya kita boleh Gunakan pembolehubah ini sebagai nilai maksimum awal.

$max = array_shift($array);
Salin selepas log masuk

b. Lelaran tatasusunan melalui fungsi array_reduce() dan cari nilai maksimum

Kita boleh menggunakan fungsi array_reduce() untuk mengulang tatasusunan dan membandingkan setiap elemen dengan pembolehubah $max , jika Jika elemen lebih besar daripada $max, kemas kini $max kepada elemen itu. Akhir sekali, $max dikembalikan sebagai nilai maksimum dalam tatasusunan.

$max = array_reduce($array, function($carry, $item) {
    if ($item > $carry) {
        return $item;
    }
    return $carry;
}, $max);
Salin selepas log masuk

c. Kod lengkap

Untuk memahami proses di atas dengan lebih jelas, berikut ialah contoh kod lengkap:

Salin selepas log masuk
  1. Ringkasan

Dalam pengaturcaraan PHP, kami biasanya menggunakan fungsi terbina dalam max() dan min() untuk mencari nilai maksimum dan minimum tatasusunan. Walau bagaimanapun, dalam beberapa kes fungsi ini mungkin bukan penyelesaian yang optimum. Artikel ini memperkenalkan penggunaan fungsi asli PHP array_shift() dan array_reduce() untuk mencari nilai maksimum tatasusunan. Fungsi ini adalah alat yang sangat berkuasa yang membolehkan kami menyelesaikan masalah dengan lebih fleksibel.

Atas ialah kandungan terperinci Fungsi asli PHP merealisasikan nilai maksimum dalam tatasusunan. 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