Dalam artikel sebelumnya "Menggunakan algoritma manik untuk mengisih tatasusunan PHP", saya memperkenalkan anda kepada menyusun tatasusunan melalui algoritma manik Artikel ini terus memperkenalkan anda kepada sedikit pengetahuan~
Katakan terdapat masalah sedemikian: sila tulis fungsi PHP yang mengembalikan integer terkecil yang bukan 0.
Adakah anda mempunyai idea mudah untuk masalah ini?
Malah, semua orang harus tahu bahawa terdapat fungsi terbina dalam min() dalam PHP, yang digunakan untuk mendapatkan dan mengembalikan nilai minimum dalam tatasusunan, atau nilai minimum antara beberapa nilai yang ditentukan.
Jadi bagaimana kita mencipta fungsi PHP untuk mendapatkan integer terkecil yang tidak mengembalikan 0?
Mari kami memperkenalkan langkah pelaksanaan khusus di bawah:
Mula-mula buat fail contoh PHP demo.php; >
Kod lengkap adalah seperti berikut:min_values_not_zeroh
Berikut ialah tatasusunan sampel "-1,0,1,12,-100,1", mari kita lihat apa yang dikembalikan oleh set data ini Apakah integer terkecil yang bukan 0?
Keputusannya adalah seperti berikut:
<?php function min_values_not_zero(Array $values) { return min(array_diff(array_map('intval', $values), array(0))); } print_r(min_values_not_zero(array(-1,0,1,12,-100,1))."\n");
Seperti yang ditunjukkan dalam gambar, integer terkecil ialah -100.
Ia sangat mudah.
Nota:Fungsi: Gunakan fungsi panggil balik pada setiap elemen tatasusunan Nilai pulangan ialah tatasusunan, termasuk tatasusunan selepas diproses oleh fungsi panggil balik (apabila ada berbilang tatasusunan, ia adalah tatasusunan) Sepadan dengan mengindeks semua elemen sebagai parameter fungsi. Apabila hanya tatasusunan dihantar masuk, tatasusunan dikembalikan mengekalkan kunci parameter yang diluluskan. Apabila menghantar dalam berbilang tatasusunan, kunci tatasusunan yang dikembalikan ialah integer berjujukan.
Fungsi: digunakan untuk membandingkan nilai dua (atau lebih) tatasusunan dan mengembalikan perbezaannya. Fungsi ini membandingkan nilai (kunci=>value) dua (atau lebih) tatasusunan dan mengembalikan tatasusunan perbezaan yang merangkumi semua nilai dalam tatasusunan yang dibandingkan (tatasusunan1), tetapi tidak dalam mana-mana Nilai dalam tatasusunan parameter lain (tatasusunan2 atau tatasusunan3, dsb.).array_map()
Akhir sekali, saya ingin mengesyorkan kepada anda kursus percuma terkini di platform kami "
"~ Datang dan belajar! array_diff()
Atas ialah kandungan terperinci Cepat kembalikan integer terkecil yang bukan 0 menggunakan PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!