代码之家  ›  专栏  ›  技术社区  ›  Arlen Beiler

无论何时,都不会运行

php
  •  0
  • Arlen Beiler  · 技术社区  · 16 年前

    我不知道是什么问题。

    这就是问题所在的代码:

    $thisvb = (int) $key2;
    if ($thisvb == ($lastvb + 1)) { //This don't work
        echo '<li>';
    } else { echo '<li value="' . $key2 . '">';}
    $last = (int) $key2;
    

    以下是完整代码。

    <?php
    $voiceboxes = array(
        '141133'    => array(
            '1'     => array(
                'Title' => 'Title2',
                'Link'  => 'http://...',
            ),
            '2' => array(
                'Title' => 'Title3',
                'Link'  => 'http://...',
            ),
            '3' => array(
                'Title' => 'Title4',
                'Link'  => 'http://...',
            )
        )
    );
    $last = 0;
    //$this = 0;
    echo "<ol>\n";
    foreach ($voiceboxes as $key => $value) {
        $lastvb = 0;
        $thisvb = 0;
        //$voiceboxes[$key]['title']
        echo "<ol>\n";
        foreach ($value as $key2 => $value2) {
                $thisvb = (int) $key2;
                if ($thisvb == ($lastvb + 1)) { //This don't work
                    echo '<li>';
                } else { echo '<li value="' . $key2 . '">';}
                $last = (int) $key2;
                echo $voiceboxes[$key][$key2]['Title'] . "<br/>" . $voiceboxes[$key][$key2]['Link'] . '</li>' . "\n";
                }
            }
        echo "</ol>\n";
        echo '</ol>';
    ?>
    

    这就是我得到的

    <ol>
    <ol>
    <li>Title2<br/>http://...</li>
    Title3<br/>http://...</li> <!-- this ain't right, it should start with <li> -->
    Title4<br/>http://...</li> <!-- same here -->
    </ol>
    </ol>
    

    我想不出来,有人知道吗?

    6 回复  |  直到 16 年前
        1
  •  4
  •   kennytm    16 年前
      } else { '<li value="' . $key2 . '">';}
    //--------^
    

    你错过了 echo .

        2
  •  3
  •   Savageman    16 年前

    你忘了 echo 在else语句中。

        3
  •  2
  •   fbrereto    16 年前

    你不是在重复else语句;它只是在被说出,而不是被输出。

        4
  •  2
  •   Matteo Riva    16 年前

    你错过了一个 echo 在else子句中。

        5
  •  2
  •   Sean    16 年前

    你的else语句中缺少“echo”。试着把它加进去看看你得到了什么样的输出。

        6
  •  1
  •   Rob    16 年前

    你说你已经更新了代码,它仍然给你一个错误,但是它仍然缺少一个回音。

    } else { '<li value="' . $key2 . '">';}
             ^
    
    推荐文章