Modificado para que sume las filas y columnas, que es lo único que igual es más complicado con CSS3.. (aparte, es más para que se vea la lógica del asunto)
Código PHP:
Ver original//$arr=array(array(2,3,4,5),array(6,7,8,9),array(10,11,12,13));
$arr=array(array(2,3,4,5,9),array(6,7,8,9,10),array(10,11,12,13,21)); // Se cuenta el numero de columnas
// Este offset sirve para evitar que , al cambiar de fila, una celda negra quede
// bajo otra negra.Esto ocurre si el numero de columnas es par.
$off= ($n%2);
$cells=0;
// Se preparan los estilos.Esto deberian ser clases css..
$styles=array('background-color:white;color:black','background-color:black;color:white'); echo "<table border=1>";
for($k=0;$k<count($arr);$k++) /* Primer for, que itera por filas */ {
$rowSum=0;
echo "<tr>";
for($j=0;$j<count($arr[$k])-1;$j++,$cells++) /* segundo for, que itera por cada celda de la fila */ {
$rowSum+=$arr[$k][$j];
echo "<td style=\"".$styles[$cells%2]."\">".$arr[$k][$j]."</td>";
$colSums[$j]+=$arr[$k][$j];
}
// El ultimo valor del array debe ser el total.
echo "<td style=\"".$styles[0]."\">".$rowSum."</td></tr>";
$cells+=$off;
}
echo "<tr><td style=\"".$styles[0]."\">".implode("</td><td style=\"".$styles[0]."\">",$colSums)."</td></tr>"; echo "</table>";