php如何循环追加变量

时间:2017-08-10 21:27:08

标签: php

我有这个有效的PHP代码:

for ($i=0; $i < 5; $i++) {
    do stuff to $class
    echo "<i class=\"glyphicon glyphicon-star $class\"></i>";
}

不是在循环中使用echo,而是如何将每次迭代附加到变量(比如$stars),然后能够用

显示结果
echo "$stars";

2 个答案:

答案 0 :(得分:3)

创建一个变量来保存HTML。将HTML连接到此变量而不是回显它。

在循环之后,您可以回显该变量。

$stars = '';
for ($i=0; $i < 5; $i++) {
    // do stuff to $class
    $stars .= "<i class=\"glyphicon glyphicon-star $class\"></i>";
}
echo $stars;

答案 1 :(得分:1)

或者,您可以在不使用输出缓冲修改现有代码的情况下执行此操作。

// start a new output buffer
ob_start();

for ($i=0; $i < 5; $i++) {
    //do stuff to $class

    // results of these echo statements go to the buffer instead of immediately displaying
    echo "<i class=\"glyphicon glyphicon-star $class\"></i>";
}

// get the buffer contents
$stars = ob_get_clean();

对于像这样的简单事情,我仍然会使用.=连接,如其他答案所示,但仅限于FYI。