Dans l'article précédent « Apprentissage PHP Array : Calcul de la somme des éléments d'un tableau », nous avons présenté la méthode de calcul de la somme de tous les éléments d'un tableau. Aujourd'hui, nous allons changer cette base. Puisque nous pouvons additionner la somme de tous les éléments du tableau, nous pouvons également trouver le produit de tous les éléments du tableau.
Cet article explique comment calculer le produit de tous les éléments d'un tableau. Il existe également trois méthodes : la boucle for, la boucle foreach et la fonction intégrée array_product(). Apprenons-en plus à ce sujet à travers des exemples de code.
Méthode 1 : Utiliser la boucle for
Regardons l'exemple suivant :
<?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; ?>
Résultat de sortie :
2 * 3 = 6 2 * 3 * 4 = 24 1 * 2 * 3 *...* 9 * 10 = 3628800
Dans l'article précédent, parce qu'il s'agit d'une sommation, la valeur initiale de la variable $sum est 0. La valeur après l'impact ; dans cet article, le produit est calculé, et tout ce qui est multiplié par 0 est 0, donc la valeur initiale de la variable $product
ici ne peut pas être 0, mais 1. $product
变量的初始值就不能为0,而是1了。
*=
运算符为“乘赋值”,可以将运算符左边的变量乘以右边表达式的值赋给左边的变量。
方法2:使用foreach循环
我们来看看下面这个实例:
<?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; ?>
输出结果:
2 * 3 = 6 2 * 3 * 4 = 24 1 * 2 * 3 *...* 9 * 10 = 3628800
foreach循环语句中,遍历数组,会在每次循环中将当前数组的值赋给 $value
;然后在每次循环中使用“$product*=$value;
”语句将当前数组的值和之前的数组元素乘积相乘即可。【推荐学习:PHP循环学习三:如何使用for循环语句遍历数组】
方法3:使用array_product()函数
array_product()是PHP中的一个内置函数,可以返回数组中所有元素的乘积。
下面我们通过代码实例来具体看看array_product()如何求数组元素的乘积:
<?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); ?>
输出结果:
2 * 3 * 4 = 24 3 * 4 * 5 = 60 1 * 2 * 3 *...* 9 * 10 = 3628800
如果$array
*=
est une "affectation de multiplication", qui peut multiplier la variable du côté gauche de l'opérateur par la valeur de l'expression du côté droit et l'attribuer à la variable de gauche. Méthode 2 : Utilisation de la boucle foreach
<?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); ?>
Résultat de sortie :
2 * 3.1 * 4 = 24.8 3 * "10.abc" * 5 = 3 * 10 * 5 =150 3 * "hello" * 5 = 3 * 0 * 5 =0
$value
; Utilisez ensuite l'instruction "$product*=$value;
" dans chaque boucle pour multiplier la valeur du tableau actuel et le produit du tableau précédent. éléments. [Apprentissage recommandé : Boucle PHP apprentissage trois : Comment utiliser les instructions de boucle for pour parcourir des tableaux
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!