如何在table的一列中显示所有数组元素

How to display all array elements in one column of table

我有三个数组,我想在 table 的单独列中显示每个数组。我的 HTML table 包含 3 列。 我想像这样显示这些数组。

<table>
    <tr>
        <th>First Column</th>
        <th>Second Column</th>
        <th>Third Column</th>
    </tr>
    <tr>
    <td>Array 1 first value</td>
        <td>Array 2 first value</td>
        <td>Array 3 first value</td>
    </tr>
    <tr>
     <td>Array 1 second value</td>
        <td>Array 2 second value</td>
        <td>Array 3 second value</td>
    </tr>
    <tr>
    <td>Array 1 third value</td>
        <td>Array 2 third value</td>
        <td>Array 3 third value</td>
    </tr>
</table>

这是我的数组的样子。

 $arr1 = array(1, 2, 3, 4);
 $arr2 = array(a, b, c, d);
 $arr3 = array(1, 2, 3, 4);
 $array = array($arr1, $arr2, $arr3);

这是我尝试显示的方式,但没有达到预期效果。

foreach($array as $key => $arr){
echo '<tr>';

?>
        <td><?php 
        echo $arr[$key]->post_title;
        ?></td>
        <td><?php 
        echo $arr[$key]->post_title;
        ?> </td>
        <td><?php 
        echo $arr[$key]->post_title;
        ?> </td>
    <?php

echo '</tr>';
}

它可能很简单,但我无法开发逻辑来让它工作。任何建议将不胜感激。

您可以使用多维数组并循环遍历它。

$array = [
    1 => ['banana', 'orange', 'apple'],
    2 => ['ferrari', 'lamborghini', 'pagani'],
    3 => ['mars', 'moon', 'venus'],
];

<table>
    <tr>
        <th>First Column</th>
        <th>Second Column</th>
        <th>Third Column</th>
    </tr>
 <?php foreach($array as $key => $value) { ?>
    <tr>
        <?php foreach($value as $name) { ?>
        <td><?=$name?></td>
        <?php } ?>
    </tr>
<?php } ?>
</table>

你可以试试this

<?php 

$array1 = ['elm11','elm12','elm12'];

$array2 = ['elm21','elm22','elm23'];

$array3 = ['elm31','elm32','elm33'];

?>
<table>
    <tr>
        <th>First Column</th>
        <th>Second Column</th>
        <th>Third Column</th>
    </tr>
    <tr>
        <?php 
            foreach($array1 as $i => $elm){
        ?>
            <td><?php echo $elm ?></td>
            <td><?php echo (isset($array2[$i]) && !empty($array2[$i]) ) ? $array2[$i] : '' ?></td>
            <td><?php echo (isset($array3[$i]) && !empty($array3[$i]) ) ? $array3[$i] : '' ?></td>
        <?php 
            }
        ?>
    </tr>
</table>
<?php
$array1 = [
    'Array 1 first value',
    'Array 1 second value',
    'Array 1 third value',
];
$array2 = [
    'Array 2 first value',
    'Array 2 second value',
    'Array 2 third value',
];
$array3 = [
    'Array 3 first value',
    'Array 3 second value',
    'Array 3 third value',
];
?>

<!-- Html part -->
<table>
    <tr>
        <th>First Column</th>
        <th>Second Column</th>
        <th>Third Column</th>
    </tr>
    <?php
        foreach($array1 as $key => $value){
            ?>
            <tr>
                <td><?php echo $array1[$key] ?? '' ?></td>
                <td><?php echo $array2[$key] ?? '' ?></td>
                <td><?php echo $array3[$key] ?? '' ?></td>
            </tr>
            <?php
        }
    ?>
</table>

Html Output:

<table>
   <tr>
      <th>First Column</th>
      <th>Second Column</th>
      <th>Third Column</th>
   </tr>
   <tr>
      <td>Array 1 first value</td>
      <td>Array 2 first value</td>
      <td>Array 3 first value</td>
   </tr>
   <tr>
      <td>Array 1 second value</td>
      <td>Array 2 second value</td>
      <td>Array 3 second value</td>
   </tr>
   <tr>
      <td>Array 1 third value</td>
      <td>Array 2 third value</td>
      <td>Array 3 third value</td>
   </tr>
</table>