0

| 記号で作成されたリストがあります。各項目の間。ここでは、これらの各項目をループ処理します。ここでの問題は、ループが空の値を持つ余分なループを 1 つ作成することです。ここでは、この余分なループは表示されません。

私は何を間違っていますか?

PHP:

    <?php   

    $variable['value'] = Something here|Another thing here

    $loop = explode("|", $variable['value']);

    for($x='0';$x<=count($loop);$x++) {

    echo "<span class='icon-caret-right'>";
    echo $loop[$x];
    echo "</span>";

    }               
    ?>
4

3 に答える 3

2

最初forループの条件が正しくありません-count値は常に最大インデックス+ 1に等しいため、$x=0; $x<=count($loop)-1; $x++またはに変更できます$x=0; $x<count($loop); $x++

2番目:ループ条件内で使用しないcountでください-すべてのステップで計算されているため、不要です-foreach代わりに使用してください。

3番目:なぜ$x='0'$x整数でなければならないので、$x=0

于 2013-10-29T09:31:43.240 に答える
0

以下のような状態にする

for($x=0;$x<count($loop);$x++) {

条件から「<=」を削除します。

for($x='0';$x<=count($loop);$x++) {
于 2013-10-29T09:29:16.167 に答える
0

開始インデックスが 0 であるため、for 条件から「=」を削除するか、x の値を 1 から開始できます。どちらも論理的に同じです。

    for($x=0;$x<count($loop);$x++) 

また

        for($x=1;$x<=count($loop);$x++) 
于 2013-10-29T09:30:43.943 に答える