为什么foreach循环输出双组li标签?

Sam*_*ton 2 html php arrays wordpress foreach

为noob问题道歉,但......

在wordpress 3.2.1中,使用wp-e-commerce:

我使用以下代码从索引数组输出一个字段作为无序列表.

function tag_badges() {
  global $wpdb, $post;
  $tags = wp_get_product_tags($post->ID);
  foreach($tags as $key)
    // print_r ($key->name);
  echo "<li>$key->name<li/>";
}
Run Code Online (Sandbox Code Playgroud)

这种作品.但是我为每个有一组的标签都得到一组空的li标签.

例如

  • 值1
  • 值2
  • 值3
  • 当我只输出没有标记的键时,它只返回数组中的三个值,例如

    键:Value1键:Value2键:Value3

    所以我很确定这不是因为输出了空字段.

    hak*_*kre 5

    您刚刚在输出中出现了一个小错误,您没有关闭li标记但添加了一个新标记:

    echo "<li>$key->name<li/>";
    #                      ^
    
    Run Code Online (Sandbox Code Playgroud)

    要修复,请移动/到第二个li标记的开头,使其实际成为结束标记:

    echo "<li>$key->name</li>";
    #                    ^
    
    Run Code Online (Sandbox Code Playgroud)

    • 把它留下来,这是一个很好的例子,可能会出错.我们并不总是一直在做高级错误;) (3认同)