Displaying array in html table

I have this array:

Array
(
    [page] => Array
        (
            [0] => add
            [1] => edit
            [2] => delete
            [3] => search
        )

    [category] => Array
        (
            [0] => add
            [1] => edit
            [2] => export
        )
   )

      

And I want it to be displayed as an html table like this:

Page - Category
add - add
edit - edit
delete - export
search
search

      

I tried in various ways but didn't work, no solutions?

+2


a source to share


4 answers


Assuming it's PHP and that the alignment is simply based on the array index:



<?php
$var['page'] = array('add', 'edit', 'delete', 'search');
$var['category'] = array('add', 'edit', 'export');

$pages = count($var['page']);
$categories = count($var['categories']);
$max = ($pages > $categories ? $pages : $categories);

echo '<table>';
for ($i = 0; $i < $max; $i++)
{
    echo '<tr>';
    echo "<td>{$var['page'][$i]}</td>";
    echo "<td>{$var['category'][$i]}</td>";
    echo '</tr>';
}
echo '</table>';
?>

      

+5


a source


This assumes that there are more pages than categories, and that they are stored in the $ Array ['pages'] and $ Array ['categories'] variables:

print '<table><tr><td>Page</td><td>Category</td></tr>';
for ($i=0; $i< sizeof($Array['pages']; $i++)
{
 print '<tr><td>';
 print $Array['pages'][$i];
 print '</td><td>';
 if ($i < sizeof($Array['categories']))
    print $Array['categories'][$i];
 print '</td></tr>';
}
print '</table>';

      



There are more elegant ways, but this should work.

0


a source


Sorry I did not mark as PHP ... here is the code for my last attempt

echo "<table>";    
for($i=0;$i<count($array);$i++)
{
    echo "<tr>";
    foreach($array as $key=>$value)
    {
        echo "<td>".$array[$key][$i]."</td>";
    }
    echo "</tr>";
}
echo "</table>";

      

but anyway JYelton's answer worked very well, thanks = D

0


a source


I have experience getting the result from a database that is an array. I created a class as a container for a unified result set that is multiple rows. Just get the property with a getter, or access it directly if it's open.

0


a source







All Articles