我正在尝试获取以下内容
<li class="player">
<a class="playerinfo>
<span class="playernumber">1</span>
<span class="playername">Angel</span>
</a>
</li>
<li class="player">
<a class="playerinfo>
<span class="playernumber">2</span>
<span class="playername">Shamak</span>
</a>
</li>
<li class="player">
<a class="playerinfo>
<span class="playernumber">4</span>
<span class="playername">Koal</span>
</a>
</li>
我需要从2个不同的foreach中获取玩家编号和玩家名称,但是我找不到一个解决方案,真的可以在Foreach中使用Foreach吗
以下是我到目前为止尝试过的方法
$repeatable1 = get_post_meta( get_the_ID(), 'meta-box-text', true);
foreach($repeatable1['playersnum'] as $num) {
echo '<li class="player">';
echo '<a class="playerinfo">';
echo ' <span class="playernumber">'.$num.'</span>';
}
foreach($repeatable1['playersname'] as $name) {
echo '<span class="playername">'.$name.'</span>';
echo '</a></li>';
}
谢谢
发布于 2018-06-15 06:12:44
您当前的循环未嵌套。但是,您可以使用index
一次性打印所需的所有数据。索引将采用值0,1,2,3...
<?php foreach($repeatable1['playersname'] as $index=> $value):?>
<li class="player">
<a class="playerinfo>
<span class="playernumber"><?php echo $repeatable1['playersnum'][$index]; ?></span>
<span class="playername"><?php echo $value; ?></span>
</a>
</li>
<?php endforeach;?>
然而:理想情况下,您将重构$repeatable
数组,使其具有一个'player'
属性,该属性将有一个sum和name条目。
$repeatable = [
"player" => [
["name"=>"The Name","sum"=>100],
["name"=>"The other name","sum"=>200],
...
]
];
https://stackoverflow.com/questions/50866542
复制相似问题