Pembelajaran tatasusunan PHP untuk mengira hasil darab unsur tatasusunan

青灯夜游
Lepaskan: 2023-04-10 13:18:01
asal
3731 orang telah melayarinya

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 &#39;2 * 3 = &#39;. $product;

$array= array(2,3,4);
$product=1;
for ($i=0; $i < count($array); $i++) { 
    $product*=$array[$i];
} 
echo &#39;<br>2 * 3 * 4 = &#39;. $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 &#39;<br>1 * 2 * 3 *...* 9 * 10 = &#39;. $product;
?>
Salin selepas log masuk

Hasil output:

2 * 3 = 6
2 * 3 * 4 = 24
1 * 2 * 3 *...* 9 * 10 = 3628800
Salin selepas log masuk
Salin selepas log masuk

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$productNilai 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 &#39;2 * 3 = &#39;. $product;

$array= array(2,3,4);
$product=1;
foreach ($array as $value) { 
    $product*=$value;
}
echo &#39;<br>2 * 3 * 4 = &#39;. $product;

$array= array(1,2,3,4,5,6,7,8,9,10);
$product=1;
foreach ($array as $value) { 
    $product*=$value;
}
echo &#39;<br>1 * 2 * 3 *...* 9 * 10 = &#39;. $product;
?>
Salin selepas log masuk

Hasil output:

2 * 3 = 6
2 * 3 * 4 = 24
1 * 2 * 3 *...* 9 * 10 = 3628800
Salin selepas log masuk
Salin selepas log masuk
Dalam

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 &#39;2 * 3 * 4 = &#39;. array_product($array);

$array= array(3,4,5);
echo &#39;<br>3 * 4 * 5 = &#39;. array_product($array);

$array= array(1,2,3,4,5,6,7,8,9,10);
echo &#39;<br>1 * 2 * 3 *...* 9 * 10 = &#39;. array_product($array);
?>
Salin selepas log masuk

Hasil keluaran:

2 * 3 * 4 = 24
3 * 4 * 5 = 60
1 * 2 * 3 *...* 9 * 10 = 3628800
Salin selepas log masuk

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 &#39;2 * 3.1 * 4 = &#39;. array_product($array);

$array= array(3,"10.abc",5);
echo &#39;<br>3 * "10.abc" * 5 = 3 * 10 * 5 =&#39;. array_product($array);

$array= array(3,"hello",5);
echo &#39;<br>3 * "hello" * 5 = 3 * 0 * 5 =&#39;. array_product($array);
?>
Salin selepas log masuk
  • 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
Salin selepas log masuk

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!

Label berkaitan:
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!