Sumar los valores de filas y columnas de una tabla en PHP

Ayer, un amigo me preguntó:

¿Cómo puedo obtener la sumatoria de los valores de una fila? y además,
¿Cómo puedo obtener la sumatoria de los valores de la columna?

También me comentó que no había encontrado una solución después de realizar varias búsquedas en Google, no tuve más que crearla y compartirla, aquí el código de PHP:

<?php

/* VARIABLES

$nf = número de filas
$nc = número de columnas
$ct= total de columna
$ft= total de fila
$cf = total de columna sumatoria de fila
*/

$nf=5;
$nc=5;

echo '<table>';
for ($i = 0; $i <= $nf; $i++) {
echo '<tr>';
for ($c = 1; $c <= $nc; $c++) {
echo '<td>'.$c.' </td>';
$ft+=$c;
$ct[$c]+=$c;
}

echo '<td style="background:yellow">'.$ft.' </td>';
$cf+=$ft;
$ft=0;
echo '</tr>';

}

echo '<tr>';
for ($c = 1; $c <= $nc; $c++) {
echo '<td style="background:lime">'.$ct[$c].'</td>';
}

echo '<td style="background:lime">'.$cf.'</td>';
echo '</tr></table>';

?>


Breve explicación:
  • Los valores de la tabla se toman del contador del FOR, pero puede ser aleatorio o extraídos de una base de datos.
  • La tabla es flexible, sólo basta con cambiar el número de filas (variable $nf) y el número de columnas (variable $nc) para crecer o decrecer el tamaño de la tabla.
  • Coloqué un color representativo para las sumatorias: amarillo para la suma de los valores de la fila, verde para la suma de los valores de las columnas.

El resultado:


4 comentarios:

Anónimo dijo...

Me sale un error T_T. Romelia_pink@hotmail.com

JAZAD dijo...

Solo tuve que descargar una version mas antigua del apache y de PHP. Gracias!!!!! :D

Héctor Guedea dijo...

De nada, pero ¿qué error te salía? para así modificarlo y funcione correctamente para todas las versiones de PHP.

JAZAD dijo...

Dice que las variables ft, ct no están definidas, pero las declaro donde se declara nc y nf y marca otros errores.

1er error:
Undefined variable: ft in C:\wamp\www\tabla.php on line 17

Undefined variable: ct in C:\wamp\www\tabla.php on line 18

2do error:

Warning: Cannot use a scalar value as an array in C:\wamp\www\tabla.php on line 21

La versión en la que marca error es la 5.3.5 que es la que viene en el wampserver 2.1. Al instalar una versión mas vieja de PHP que es la 5.0 marca error por la versión de apache.