1

I'm trying to display this array into a 3-column HTML tables using PHP:

[user] => Array (
 [0] => 024366c0a0d88ee4d2e3c8e479d8f8bb361c1908
 [1] => 1dfb9ba35f5995a8213f623ec3536947242c877d
 [2] => 1f2f182fde1f4bc8d2262639c51be73b5d8555b1
 [3] => 2219ffa1265576f56ccea846a5f0983391fe3a3a
 [4] => 517c3b6c008b582dcafb7cb60450abd19147e21a
)
[song] => Array (
 [0] => SOAKIMP12A8C130995
 [1] => SOAKIMP12A8C130995
 [2] => SOAKIMP12A8C130995
 [3] => SOAKIMP12A8C130995
 [4] => SOAKIMP12A8C130995
)
[rating] => Array (
 [0] => 100
 [1] => 100
 [2] => 100
 [3] => 100
 [4] => 100
)

So far I've tried this to display each row individually:

<table border="1px">
    <tr>
        <td><?php echo $array['user'][0] ?></td>
        <td><?php echo $array['song'][0] ?></td>
        <td><?php echo $array['rating'][0] ?></td>
    </tr>
</table>

And this but it became 5 column:

<?php foreach ($array as $row) {
        echo ('<tr>');
        echo ('<td>');
        echo (implode('</td><td>', $row));
        echo ('</td>');
        echo ('</tr>');
    } ?>

Context on how I need it to look like:

------------------------
|user   |song   |rating|
|024366c|SOAKIMP|100   |
|12424ta|SOAKIMP|100   |
|453e2bc|SOAKIMP|100   |
------------------------
b0or3ed
  • 13
  • 2
  • Possible duplicate of [How to create a HTML Table from a PHP array?](https://stackoverflow.com/questions/4746079/how-to-create-a-html-table-from-a-php-array) – admcfajn Oct 08 '19 at 17:16

1 Answers1

1

Using a foreach you can get the index of the array being processed $idx. You can then use that in the lines processing the other sub arrays

<table border="1px">
<?php 
foreach ($array['user'] as $idx => $row) : 
?>
    <tr>
        <td><?php echo $row ?></td>
        <td><?php echo $array['song'][$idx ] ?></td>
        <td><?php echo $array['rating'][$idx ] ?></td>
    </tr>
<?php 
endforeach;
?>
</table>

Warning This does need the 3 arrays to always be of the same length

RiggsFolly
  • 93,638
  • 21
  • 103
  • 149