Maison  >  Article  >  développement back-end  >  Comment additionner une valeur dans un tableau unidimensionnel en PHP

Comment additionner une valeur dans un tableau unidimensionnel en PHP

PHPz
PHPzoriginal
2023-04-23 19:29:51853parcourir

En PHP, le tableau est un type de données très couramment utilisé, et l'opération de somme d'une valeur spécifiée dans le tableau est également l'une des exigences courantes. Cet article explique comment utiliser PHP pour additionner une valeur dans un tableau unidimensionnel et fournit quelques exemples associés à titre de référence.

1. Utilisez la fonction array_reduce pour implémenter la sommation

La fonction array_reduce peut réduire tous les éléments du tableau, et la méthode de réduction peut être définie par vous-même. Lorsqu'un certain attribut du tableau doit être additionné, l'attribut peut être utilisé comme paramètre de l'opération de réduction. L'implémentation spécifique est la suivante :

$numbers = array(10, 20, 30, 40, 50);
$sum = array_reduce($numbers, function($carry, $item) {
    return $carry + $item;
}, 0);
echo "数组总和为:" . $sum;

Dans le code ci-dessus, nous définissons d'abord un tableau $numbers. , Et utilisez la fonction array_reduce pour effectuer l'opération de somme. Lors de l'opération de réduction, nous utilisons la variable $carry pour sauvegarder le résultat après la dernière réduction, et la variable $item représente la valeur de l'élément actuel. Dans ce cas, l'opération de réduction est une simple opération d'addition, et 0 représente la valeur initiale de la première opération de réduction. $numbers,并使用 array_reduce 函数对其进行求和操作。在缩减操作中,我们使用 $carry 变量来保存上次缩减后的结果,而 $item 变量则表示当前元素的值。在本例中,缩减操作就是简单的加法操作,0 则表示第一次缩减操作的初始值。

运行上述代码,我们可以得到如下结果:

数组总和为:150

上述实例演示了如何使用 array_reduce 函数求解一维数组中元素的总和。但如果我们要对一维数组中某一属性进行求和,该怎样实现呢?这时,可以将一个回调函数作为缩减操作的参数,在回调函数中对缩减属性进行筛选和相加操作。具体实现如下:

$students = array (
    "Tom" => array("age" => 23, "score" => 80),
    "Jerry" => array("age" => 22, "score" => 90),
    "Mickey" => array("age" => 23, "score" => 85)
);

$sum = array_reduce($students, function($carry, $item) {
    return $carry + $item['score'];
}, 0);
echo "学生成绩总分为:" . $sum;

上述代码中,我们定义了一个学生信息的数组 $students,其中每个元素由一个姓名、年龄和分数组成。我们使用 array_reduce 函数以及一个回调函数对每个学生元素的分数进行累加,从而得到学生成绩的总分数。

运行上述代码,我们可以得到如下结果:

学生成绩总分为:255

通过以上实例可以看出,使用 array_reduce 函数可以灵活地实现对一维数组中某一属性的求和操作。

二、使用 foreach 循环实现求和

和 array_reduce 函数相比,PHP 中还可以通过常规的 foreach 循环来实现对一维数组中某一属性的求和。具体实现如下:

$students = array (
    "Tom" => array("age" => 23, "score" => 80),
    "Jerry" => array("age" => 22, "score" => 90),
    "Mickey" => array("age" => 23, "score" => 85)
);

$sum = 0;
foreach ($students as $student) {
    $sum += $student['score'];
}
echo "学生成绩总分为:" . $sum;

这里的实现比较简单,就是使用 foreach 循环依次遍历数组中的所有元素,并对每个元素的分数进行累加,最终得到学生成绩的总分数。

运行上述代码,我们可以得到如下结果:

学生成绩总分为:255

由此可见,使用 foreach 循环也是一种常见的实现方式,尤其适合处理较小的数组。

三、使用 array_sum 函数实现求和

除了 array_reduce 函数之外,PHP 中还提供了一个专门用来求解数组元素和的 array_sum 函数。这个函数非常简单,直接将数组作为参数并返回其元素总和即可,具体实现如下:

$numbers = array(10, 20, 30, 40, 50);
$sum = array_sum($numbers);
echo "数组总和为:" . $sum;

上述代码中,我们调用 array_sum 函数对数组 $numbers

Exécutez le code ci-dessus, nous pouvons obtenir les résultats suivants :

数组总和为:150
L'exemple ci-dessus montre comment utiliser la fonction array_reduce pour trouver la somme des éléments dans un tableau unidimensionnel. Mais si nous voulons additionner un attribut dans un tableau unidimensionnel, comment devons-nous procéder ? À ce stade, une fonction de rappel peut être utilisée comme paramètre de l'opération de réduction, et les attributs de réduction peuvent être filtrés et ajoutés dans la fonction de rappel. L'implémentation spécifique est la suivante :

rrreee

Dans le code ci-dessus, nous définissons un tableau d'informations sur les étudiants $students, où chaque élément est constitué d'un nom, d'un âge et d'un score. Nous utilisons la fonction array_reduce et une fonction de rappel pour accumuler les scores de chaque élément étudiant afin d'obtenir le score total de la note de l'étudiant.

Exécutez le code ci-dessus, nous pouvons obtenir les résultats suivants :

rrreee

Comme le montre l'exemple ci-dessus, la fonction array_reduce peut être utilisée pour implémenter de manière flexible l'opération de sommation d'un attribut dans un tableau unidimensionnel. 🎜🎜2. Utilisez la boucle foreach pour implémenter la sommation🎜🎜Par rapport à la fonction array_reduce, PHP peut également utiliser la boucle foreach régulière pour implémenter la somme d'un attribut dans un tableau unidimensionnel. L'implémentation spécifique est la suivante : 🎜rrreee🎜L'implémentation ici est relativement simple, elle consiste à utiliser la boucle foreach pour parcourir tous les éléments du tableau en séquence, et accumuler les scores de chaque élément, et enfin obtenir le score total de la performance de l'élève. 🎜🎜Exécutez le code ci-dessus, nous pouvons obtenir les résultats suivants : 🎜rrreee🎜On peut voir que l'utilisation de la boucle foreach est également une méthode d'implémentation courante, particulièrement adaptée au traitement de tableaux plus petits. 🎜🎜3. Utilisez la fonction array_sum pour implémenter la sommation🎜🎜En plus de la fonction array_reduce, PHP fournit également une fonction array_sum spécifiquement utilisée pour résoudre la somme des éléments du tableau. Cette fonction est très simple. Elle prend simplement le tableau comme paramètre et renvoie la somme de ses éléments. L'implémentation spécifique est la suivante : 🎜rrreee🎜Dans le code ci-dessus, nous appelons la fonction array_sum pour effectuer l'opération de somme sur le tableau. $numbers. Enfin, obtenez sa somme. 🎜🎜Exécutez le code ci-dessus, nous pouvons obtenir les résultats suivants : 🎜rrreee🎜Il convient de noter que la fonction array_sum ne peut être utilisée que pour résoudre des tableaux d'index numériques unidimensionnels si vous devez additionner un attribut dans un format unidimensionnel. tableau associatif, vous devez d'abord utiliser la fonction array_column pour le convertir en un tableau indexé numériquement, puis utiliser la fonction array_sum pour effectuer la somme. 🎜🎜IV.Résumé🎜🎜Cet article présente la méthode d'implémentation de sommation d'un attribut dans un tableau unidimensionnel en PHP, y compris la fonction array_reduce, la boucle foreach et la fonction array_sum. En comparaison, la fonction array_reduce est la plus flexible et peut s'adapter à divers scénarios, mais sa complexité est également relativement élevée. La boucle foreach et la fonction array_sum sont plus simples et plus directes, adaptées au traitement de petits tableaux. Différentes méthodes de mise en œuvre peuvent être sélectionnées en fonction des besoins réels pour obtenir des résultats optimaux. 🎜

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn