我目前有一个简单的HTML列表。我想要的是重复这个列表项,每个重复的元素都有一个变量,每次重复都会增加一个。
我在上面的列表项中包含的php调用来自WordPress上的高级自定义字段插件。我想要改变的变量是那些php调用中的数字。
<ul>
<li>
<?php the_field('vendor_1_name'); ?> <!--the number is the variable that i want to increase by one with each repition-->
<a href="http://<?php the_field('vendor_1_url'); ?>" target="_blank"/>
<?php the_field('vendor_1_url'); ?>
</a>
</li>
</ul>
我知道如何使用数组做到这一点,但我很想听听其他方法如何做这样的事情。谢谢!
答案 0 :(得分:3)
<ul>
<?php for ($z = 0; $z < $n; $z++) : ?>
<li>
<?php the_field('vendor_'.$z.'_name'); ?>
<a href="http://<?php the_field('vendor_'.$z.'_url'); ?>" target="_blank">
<?php the_field('vendor_'.$z.'_url'); ?>
</a>
</li>
<?php endfor; ?>
</ul>
$n
是其应迭代的次数。
答案 1 :(得分:1)
使用for循环。如果你有一个项目数组(你是从数据库中获取供应商吗?),只需遍历数组:
<?php
// fetch values and define $vendors
// using sql is highly recommended
echo "<ul>\n";
for ($i = 0; $i < count($vendors); $i++) {
echo "<li><a href='".$vendors[$i]['vendor_url']."'>".$vendors[$i]['vendor_name']."</a></li>\n";
}
echo "</ul>\n";
?>
请注意,数组会说vendor_name
而不是vendor_1_name
,因为该字段的名称不会包含迭代。