Cómo implementar DataList (asp.net) tipo de funcionalidad en PHP?
Pregunta
Quiero mostrar datos en dos columnas de la siguiente manera
Entry 1 Entry 2
entry 1 description entry 2 description
Entry 3 Entry 4
entry 3 description entry 4 description
Entry 5
entry 5 description
Ahora en asp.net su prestty fácil, basta con obtener una lista de datos hacer algunos ajustes y dar a la fuente de datos a la misma y se las puede hacer por usted.
Pero en PHP para mostrar cómo este tipo de lista, ¿alguien puede darme algo de código para esto?
Gracias
Solución
i suponga que desea dibujar una tabla html .. que es tan fácil de manejar diseño html y número de columna variable. aquí es un ejemplo de código que va a hacer exactamente lo que necesita ..
/* populate sample data */
for($i=1; $i<10; $i++) { $data_array[]=array('Entry '.$i,'entry '.$i.' description'); }
/* how many columns */
$column_number='3';
/* html table start */
?><table border="1" cellspacing="5" cellpadding="5"><?php
$recordcounter=1; /* counts the records while they are in loop */
foreach($data_array as $record) {
/* decide if there will be new Table row (<TR>) or not ... left of division by column number is the key */
if($recordcounter%$column_number==1){ echo "<tr>"; }
?>
<td>
<?=$record[0]?>
<br />
<?=$record[1]?>
</td>
<?php
/* decide if there will be end of table row */
if($recordcounter%$column_number==0){ echo "</tr>"; }
$recordcounter++; /* increment the counter */
}
if(($recordcounter%$column_number)!=1){ echo "</tr>"; }
?></table><?php
Otros consejos
supongo que estás preguntando cómo construir la salida HTML?
<?php $array = array('Item 1' => 'Description 1', 'Item 2' => 'Description 2'); ?>
<dl>
<?php foreach ($array as $item => $description) : ?>
<dt><?php echo $item; ?></dt>
<dd><?php echo $description; ?></dd>
<?php endforeach; ?>
</dl>
Puede estilo fácilmente esta usando CSS, flotando a hacer columnas o lo que sea.
Si está utilizando un marco que puede incluir un ayudante de algún tipo para hacer esto, pero PHP estándar no lo hace.
¿Eso responde a su pregunta?