Así que estoy tratando de hacer que mi matriz PHP imprima una matriz completa dentro de un td, así que quiero que la tabla se vea así:

First  ---  Last  ---  Values  
John   --  Smith  --  1,2,4,6 

$comp_labs contiene los valores (1,2,4,6 por ejemplo)

Aquí está el código que tengo en este momento:

echo "<tr>";
echo "
<td> ".$firstName."</td>
<td> ".$lastName."</td>
<td> ".$comp_labs."</td>
</tr>\n";
echo "</table>";

Imprime bien el nombre, pero solo el último elemento de la matriz. Intenté recorrer solo esa matriz de impresión td [i] así:

echo "<tr>";
echo "
<td> ".$firstName."</td>
<td> ".$lastName."</td>
<td> "for($i=0; $i < count($comp_labs); $i++){.$comp_labs[i].}"</td>
</tr>\n";
echo "</table>";

Pero eso no le gustó. Sin embargo, si hago eco de la matriz $comp_labs fuera de la tabla, imprime toda la matriz correctamente, lo que me resulta un poco confuso. He echado un vistazo en línea, pero todos los foros con los que me he encontrado han sido personas que intentaron recorrer e imprimir 1 valor por t d, no todos los valores en uno td.

Si alguien puede ayudar aquí, se lo agradecería mucho, ¡gracias de antemano!

php
1
Big_Daddy 15 nov. 2017 a las 09:29

2 respuestas

La mejor respuesta

Necesita implode()

 <td> ".implode(",", $comp_labs )."</td>

Entonces se convierte en:

echo "<tr>
              <td> ".$firstName."</td>
              <td> ".$lastName."</td>
              <td> ".implode(",", $comp_labs)."</td>
     </tr>\n";
0
Akshay Hegde 15 nov. 2017 a las 06:31

Implantar la matriz convirtiéndola en una cadena.

$comp  = implode(", ",$comp_labs);
0
openquestions 15 nov. 2017 a las 06:32