Dalam artikel sebelumnya "Pembelajaran Tatasusunan PHP: Mengira Jumlah Elemen Tatasusunan", kami memperkenalkan kaedah pengiraan jumlah semua elemen dalam tatasusunan. Hari ini kita akan menukar asas ini Memandangkan kita boleh menambah jumlah semua elemen tatasusunan, kita juga boleh mencari hasil bagi semua elemen tatasusunan.
Artikel ini akan melihat cara mengira hasil darab semua elemen dalam tatasusunan Terdapat juga tiga kaedah: untuk gelung, gelung foreach dan array_product() fungsi terbina dalam contoh.
Kaedah 1: Gunakan untuk gelung
Mari kita lihat contoh berikut:
<?php $array= array(2,3); $product=1; for ($i=0; $i < count($array); $i++) { $product*=$array[$i]; } echo '2 * 3 = '. $product; $array= array(2,3,4); $product=1; for ($i=0; $i < count($array); $i++) { $product*=$array[$i]; } echo '<br>2 * 3 * 4 = '. $product; $array= array(1,2,3,4,5,6,7,8,9,10); $product=1; for ($i=0; $i < count($array); $i++) { $product*=$array[$i]; } echo '<br>1 * 2 * 3 *...* 9 * 10 = '. $product; ?>
Hasil output:
2 * 3 = 6 2 * 3 * 4 = 24 1 * 2 * 3 *...* 9 * 10 = 3628800
Dalam artikel sebelumnya, kerana ia adalah penjumlahan, nilai awal pembolehubah $sum ialah 0 dan tidak menjejaskan nilai berikutnya dalam artikel ini, ia adalah hasil darab dengan 0 ialah 0, jadi di sini$product
Nilai awal pembolehubah tidak boleh 0, tetapi 1. Pengendali
*=
ialah "tugasan pendaraban", yang boleh mendarab pembolehubah di sebelah kiri pengendali dengan nilai ungkapan di sebelah kanan dan menetapkannya kepada pembolehubah di sebelah kiri.
Kaedah 2: Gunakan gelung foreach
Mari kita lihat contoh berikut:
<?php $array= array(2,3); $product=1; foreach ($array as $value) { $product*=$value; } echo '2 * 3 = '. $product; $array= array(2,3,4); $product=1; foreach ($array as $value) { $product*=$value; } echo '<br>2 * 3 * 4 = '. $product; $array= array(1,2,3,4,5,6,7,8,9,10); $product=1; foreach ($array as $value) { $product*=$value; } echo '<br>1 * 2 * 3 *...* 9 * 10 = '. $product; ?>
Hasil output:
2 * 3 = 6 2 * 3 * 4 = 24 1 * 2 * 3 *...* 9 * 10 = 3628800
penyataan gelung foreach, tatasusunan dilalui dan nilai tatasusunan semasa ditugaskan kepada $value
dalam setiap gelung kemudian pernyataan "$product*=$value;
" digunakan dalam setiap gelung untuk menggabungkan nilai bagi tatasusunan semasa dengan tatasusunan sebelumnya. [Pembelajaran yang disyorkan: Pembelajaran Gelung PHP 3: Cara menggunakan pernyataan gelung for untuk melintasi tatasusunan ]
Kaedah 3: Gunakan fungsi array_product()
array_product () ialah fungsi terbina dalam PHP yang mengembalikan hasil darab semua elemen dalam tatasusunan.
Mari kita lihat bagaimana array_product() mengira hasil darab elemen tatasusunan melalui contoh kod:
<?php $array= array(2,3,4); echo '2 * 3 * 4 = '. array_product($array); $array= array(3,4,5); echo '<br>3 * 4 * 5 = '. array_product($array); $array= array(1,2,3,4,5,6,7,8,9,10); echo '<br>1 * 2 * 3 *...* 9 * 10 = '. array_product($array); ?>
Hasil keluaran:
2 * 3 * 4 = 24 3 * 4 * 5 = 60 1 * 2 * 3 *...* 9 * 10 = 3628800
Jika$array
Jika terdapat unsur jenis bukan angka, PHP akan menukarnya kepada nilai angka (penukaran jenis data tersirat), dan jika penukaran gagal, ia akan dianggap sebagai nilai 0.
<?php $array= array(2,"3.1",4); echo '2 * 3.1 * 4 = '. array_product($array); $array= array(3,"10.abc",5); echo '<br>3 * "10.abc" * 5 = 3 * 10 * 5 ='. array_product($array); $array= array(3,"hello",5); echo '<br>3 * "hello" * 5 = 3 * 0 * 5 ='. array_product($array); ?>
Rentetan "3.1" akan ditukar kepada perpuluhan 3.1, jadi hasil darab unsur tatasusunan pertama ialah 24.8.
Rentetan "10abc" akan ditukar kepada integer 10, jadi hasil darab unsur tatasusunan kedua ialah 150.
Rentetan "hello" tidak boleh ditukar kepada integer, jadi sebagai nilai 0, hasil darab unsur tatasusunan ketiga ialah 0.
Hasil keluaran:
2 * 3.1 * 4 = 24.8 3 * "10.abc" * 5 = 3 * 10 * 5 =150 3 * "hello" * 5 = 3 * 0 * 5 =0
Itu sahaja jika anda ingin mengetahui perkara lain, anda boleh klik ini. → →Tutorial video php
Akhir sekali, saya mengesyorkan tutorial video percuma tentang tatasusunan PHP: Penjelasan video fungsi tatasusunan fungsi PHP, datang dan pelajari!
Atas ialah kandungan terperinci Pembelajaran tatasusunan PHP untuk mengira hasil darab unsur tatasusunan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!