Autor Tema: Funcion php que dibuja un arreglo bidimensional en una tabla html  (Leído 3990 veces)

Jonathan Ramos

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 15
    • Ver Perfil
Código: [Seleccionar]
<?php
//Funcion que Dibuja una tabla.
//Coded by: Jonathan Ramos, jonathanramos@gmail.com
//--------------------------------------------------------------------------------------------------
// Sintaxis function drawTable ($title,$columnHeader,$rowHeader,$tableArray,$keyFlag,$emptyCellKey)
// -------------------------------------------------------------------------------------------------
// donde $title,$columnHeader,$rowHeader y $emptyCellKey deben ser asignados con valor 0 si no se requieren.
// $title : Es una Cadena con el titulo de la tabla.
// $columnHeader: Arreglo con los Headers de las columnas de la tabla a dibujar.
// $rowHeader: Arreglo con los Headers de los renglones de la tabla a dibujar.
// $tableArray: Arreglo de dos dimensiones con los datos a imprimir en la tabla. Este es obligatorio.
// $keyFlag: Valor booleano para indicar que se incluye un valor clave de escape para imprimer celda vacia.
// $emptyCellKey: Valor clave de escape para imprimir celda vacia, si no se requiere se debe asignar false.

function drawTable($title,$columnHeader,$rowHeader,$tableArray,$keyFlag,$emptyCellKey){

$arrayRowCount count($tableArray); // Numero de elementos encabezado columna
$arrayColumnCount count($tableArray[0]); // Numero de elementos encabezado renglon
$tableColumnCount $arrayColumnCount;

//Creamos la tabla html
echo '<table style="width:50%">';

//Imprime titulo con cellpading $tableColumnCount
if ($rowHeader != 0){
$tableColumnCount++; //Si existen $rowHeader, incrementamos el numero de columnas de la tabla a dibujarse
}
echo '<tr style="background-color:CornflowerBlue; color:white;">'// Estilo del titulo
echo '<th colspan = "'.$tableColumnCount.'"; >'.$title.'</th></tr>';

//Si son requeridos, creamos Headers de Columna
if ($columnHeader != 0){
//Iniciamos etiqueta html table row
echo '<tr style="background-color:Azure;">'// Colores de estilo
//Si hay headers de renglon, agregamos una celda en blanco
if ($rowHeader != 0){
echo "<th></th>";
}

//Pintado de headers de Columna
for ($col=0$col $arrayColumnCount$col++){
echo "<th>".$columnHeader[$col]."</th>";
}
echo "</tr>"//Finalizamos etiqueta html table row


//Pintado de renglones del array, y si son requeridos, creamos Headers de Renglon.
for ($row=0$row $arrayRowCount$row++){
echo "<tr>"//Inicializamos etiqueta html table row sin atributos

//Si son requeridos, creamos Headers de Renglon
if ($rowHeader != 0){
// Colores de estilo
echo '<th style="background-color:Lavender;">'.$rowHeader[$row].'</th>'// Headers de renglon
}

//Pintado de celdas del arreglo $tableArray
for ($col=0$col $arrayColumnCount$col++){
// Verificamos si la bandera de escape es TRUE
if ( $keyFlag ){
// Verificamos si no es un valor de celda vacia
if ($tableArray[$row][$col] != $emptyCellKey){
echo "<td>".$tableArray[$row][$col]."</td>";
} else {
echo "<td></td>"// Celda Vacia por valor de escape
}
} else {
echo "<td>".$tableArray[$row][$col]."</td>";
}

echo "</tr>"//Finalizamos etiqueta html table row
}

echo "</table>";

// end drawTable()

?>

Aqui un ejemplo de como funciona: http://utilities.byethost3.com/cursoPHP/calendario_v2.php

Si alguien sabe como hacer los argumentos opcionales (que se puedan escribir o no) en lugar de pedir un 0, que me lo diga por favor  ;D
« Última modificación: 19 de Febrero 2016, 02:41 por Jonathan Ramos »

Alex Rodríguez

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2050
    • Ver Perfil
Re:Funcion php que dibuja un arreglo bidimensional en una tabla html
« Respuesta #1 en: 21 de Febrero 2016, 19:19 »
Hola Jonathan, buen aporte

Para incluir argumentos opcionales en php he dejado aquí una explicación: https://www.aprenderaprogramar.com/foros/index.php?topic=4033.0

Saludos

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".