用php循环回显html代码

时间:2016-10-02 21:55:04

标签: php html

在我的项目中我有很多id,每个id都有像p1,p2,p3这样的数字......  

    </ons-list-item>
    </list-item>

所以我创建用于生成代码的php,如

<?php
for ($x = 0; $x <= 100; $x++) {
echo " <ons-list-item id="p+$x" onclick="fn.load('s+$x.html');ofsc();"     tappable>

    </ons-list-item>"; 
}
?>  

对于rsult:

    <ons-list-item id="p1" onclick="fn.load('s1.html');ofsc();" tappable>

    </ons-list-item>
    <ons-list-item id="p2" onclick="fn.load('s2.html');ofsc();" tappable>

    </ons-list-item>

但不工作并显示错误{解析错误:语法错误,意外'p'(T_STRING),期待','或';'在 }

2 个答案:

答案 0 :(得分:2)

+不是连接运算符,.是。此外,您的for循环应如下所示:

for ($x = 1; $x <= 100; $x++) {
    echo "<list-item id='p" . $x . "'></list-item>"; 
}

更新(1):

for ($x = 1; $x <= 100; $x++) {
    ?>
    <ons-list-item id='p<?php echo $x; ?>' onclick="fn.load('s<?php echo $x; ?>.html');ofsc();" tappable>
    </ons-list-item>
    <?php
}

答案 1 :(得分:1)

另一种解决方案是:

<?php for ($x = 0; $x <= 100; $x++): ?>
   <ons-list-item id="p<?php echo $x ?>" onclick="fn.load(\'s<?php echo $x ?>.html\');ofsc();" tappable></ons-list-item>
<?php endfor; ?>

for ($x = 1; $x <= 100; $x++) {
   echo sprintf('<ons-list-item id="p%s" onclick="fn.load('s%s.html');ofsc();" tappable></ons-list-item>, $x); 
}

for ($x=1; $x <= 100; $x++) {
   echo '<ons-list-item id="p' . $x . '" onclick="fn.load(\'s' . $x . '.html\');ofsc();" tappable></ons-list-item>'; 
}