En este post te voy a mostrar a sumar los valores de un arreglo en PHP de dos maneras: con un algoritmo que recorre el arreglo y va sumando una variable; y con la función array_reduce
de PHP.
Al final podremos tener la suma de los valores del arreglo en PHP.
El ejemplo más sencillo y aplicable a otros lenguajes es recorrer el arreglo e ir sumando cada valor en una variable:
<?php
// https://parzibyte.me/blog
$numeros = array(12, 34, 554, 123);
$suma = 0;
foreach ($numeros as $numero) {
$suma += $numero;
}
echo "Suma: $suma";
No importa si los números son enteros o flotantes, la suma se hará igualmente. Usamos el operador +=
que es una forma corta de:
$suma = $suma + $numero;
Ahora veamos cómo hacerlo usando array_reduce
.
La función array_reduce de PHP reduce un arreglo a un solo valor. La sintaxis es:
array_reduce($arreglo, $funcion_que_reduce, $valorInicial);
La función que reduce es una función en donde recibimos el acarreo (lo que se lleva almacenado) y el elemento N del arreglo.
El valor inicial es un valor que se devuelve si el arreglo está vacío, y es el valor que tiene el acarreo la primera vez.
Para obtener la suma de valores con PHP usamos lo siguiente:
<?php
// https://parzibyte.me/blog
$numeros = array(12, 34, 554, 123, 15);
$valorInicial = 0; // Valor inicial de array_reduce
$suma = array_reduce($numeros, function ($acarreo, $numero) {
return $acarreo + $numero;
}, $valorInicial);
echo "Suma: $suma";
Como ves, es incluso un código un poco más complejo, pero array_reduce
es útil en muchas otras aplicaciones.
Recuerda que la función que indicamos es anónima, pero podría ser almacenada o con nombre; todo depende del uso que le des.
En este post te quiero compartir un código de C++ para listar y cancelar trabajos…
Gracias a WebAssembly podemos ejecutar código de otros lenguajes de programación desde el navegador web…
Revisando y buscando maneras de imprimir un PDF desde la línea de comandos me encontré…
Esta semana estuve recreando la API del plugin para impresoras térmicas en Android (HTTP a…
Hoy te enseñaré a extraer la cadena base64 de una clave PEM usando una función…
Encender un foco con un Bot de Telegram es posible usando una tarjeta como la…
Esta web usa cookies.
Ver comentarios
Podrias ayudarme, tengo un gran problema con una autosuma, no logro conseguir resolver, quiero automar esta variable $num