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?>
如果所有数组的大小完全相同,您可以使用 each
与 $hotelName
:
同时遍历其他数组
<?php foreach ($hotelName as $index => $name):?>
$price = each($hotelPrice);
$boardType = each($boardType);
<div>
<p><?php echo $name;?></p>
</div>
<?php endforeach?>
但是,在那种情况下,最好只使用一个包含所有数据的数组。
这应该适合你:
(这里我只是用 array_map()
遍历了所有 3 个数组,然后将它们打印成你想要的结构)
<?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);
?>
示例input/output:
$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>
如何在两个或多个 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?>
如果所有数组的大小完全相同,您可以使用 each
与 $hotelName
:
<?php foreach ($hotelName as $index => $name):?>
$price = each($hotelPrice);
$boardType = each($boardType);
<div>
<p><?php echo $name;?></p>
</div>
<?php endforeach?>
但是,在那种情况下,最好只使用一个包含所有数据的数组。
这应该适合你:
(这里我只是用 array_map()
遍历了所有 3 个数组,然后将它们打印成你想要的结构)
<?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);
?>
示例input/output:
$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>