Foreach循环在PHP中返回空值?

时间:2010-03-20 15:30:41

标签: php foreach

我有一个非常简单的问题。

基本上我有一个名为$list的数组,它是一个标题列表。如果我做了print_r($list)我得到了这些结果:

Array ( [0] => Another New Title [1] => Awesome Movies and stuff [2] => Jascha's Title )

现在,我正在运行foreach循环来检索它们的值,并将其格式化为<ul>,如此...

function get_film_list(){
    global $categories;
    $list = $categories->get_film_list();
    if(count($list)==0){
        echo 'No films are in this category';
    }else{
        echo '<ul>';
        foreach($list as $title){
           echo '<li>' . $title . '<li>';
        }
        echo '</ul>';
    }
}

我遇到的问题是我的循环每个值返回两个值(它是键值吗?) 上述函数的结果如下所示:

  • 另一个新标题
  • 很棒的电影和东西
  • Jascha的标题

我甚至尝试过:

foreach($list as $key => $title){
    echo '<li>' . $title . '<li>';
}

结果相同:

  • 另一个新标题
  • 很棒的电影和东西
  • Jascha的标题

我在这里缺少什么?

提前致谢。

1 个答案:

答案 0 :(得分:7)

您使用<li>代替</li>作为结束标记。使用正确的结束标记,它应该工作:

echo '<li>' . $title . '</li>';