我正在尝试制定一些虚拟数据,以便我可以开发一个html数据表的前端,这样就可以将数据写出一次并使用str_repeat
多次输出。< / p>
我在前端加入的功能之一是能够对列进行排序,但为此我需要在每行中使用不同的数据。我计划使用rand()
来协助这部分,但是当我将它与下面的代码块一起使用时,它会生成一个随机数,并且str_repeat
输出会产生3次..
是否有一种简单的方法可以让它在rand()
func的每次迭代中运行str_repeat()
func?
$html = "
<tr>
<!-- Unit Price -->
<td class='table-input input-number'>
<input class='input-center' value='" . rand(10,200) . "'>
</td>
<!-- QTY -->
<td class='table-input input-number'>
<input class='input-center' value='" . rand(1,5) . "'>
</td>
</tr>";
echo str_repeat($html,3);
答案 0 :(得分:1)
不,你不能用str_repeat
来做,因为你有一个固定的字符串,这是重复的。使用例如
$tmpl = "
<tr>
<!-- Unit Price -->
<td class='table-input input-number'>
<input class='input-center' value='%d'>
</td>
<!-- QTY -->
<td class='table-input input-number'>
<input class='input-center' value='%d'>
</td>
</tr>";
for($i = 0; $i < 3; $i++) {
printf($tmpl, rand(10, 200), rand(1, 5));
}
答案 1 :(得分:0)
我最终使用的方法是基于@Christoph的回答,这种方法可以让你以更直接的方式输入html和rand()
值。
for($i = 0; $i < 3; $i++) {
echo "<tr>
<!-- Unit Price -->
<td class='table-input input-number'>
<input class='input-center'" . rand(1,5) . "'>
</td>
<!-- QTY -->
<td class='table-input input-number'>
<input class='input-center'" . rand(1,5) . "'>
</td>
</tr>";
}