具有两个或多个数组的 PHP Foreach


PHP Foreach with two or more arrays

如何在两个或多个 php 数组上使用 Foreach?

我的数组$boardType, $hotelPrice and $hotelName

解决方案是将$index作为后缀添加到其他数组中

<?php foreach ($hotelName as $index => $name):?>
<div>
<p><?php echo $name;?></p>
<p><?php echo $hotelPrice[$index];?></p>
<p><?php echo $boardType[$index];?></p>
</div>
<?php endforeach?>

这应该适合您:

(在这里,我只是浏览所有 3 个数组,array_map()将它们打印成您想要的结构)

<?php
    array_map(function($v1, $v2, $v3){
        echo "<div>";
            echo "<p>$v1</p>";
            echo "<p>$v2</p>";
            echo "<p>$v3</p>";
        echo "</div>";
    }, $boardType, $hotelPrice, $hotelName);
?>

示例输入/输出:

$boardType = [1,2,3];
$hotelPrice = [4,5,6];
$hotelName = [7,8,9];

<div>
    <p>1</p>
    <p>4</p>
    <p>7</p>
</div>
<div>
    <p>2</p>
    <p>5</p>
    <p>8</p>
</div>
<div>
    <p>3</p>
    <p>6</p>
    <p>9</p>
</div>

如果所有数组的大小完全相同,您可以使用each$hotelName的同时遍历其他数组:

<?php foreach ($hotelName as $index => $name):?>
    $price = each($hotelPrice);
    $boardType = each($boardType);
<div>
<p><?php echo $name;?></p>
</div>
<?php endforeach?>

但是,在这种情况下,最好只有一个包含所有数据的数组。