了解php循环行为

时间:2015-10-09 03:06:58

标签: php wordpress loops woocommerce

我有一个foreach循环,想要列出数组中的所有项目。行为很简单,就像这样:

 $posttags = get_the_tags();
        if ($posttags) {
          foreach($posttags as $tag) {
            $tagnames = $tag->name . ', ' ;
            echo $tagnames; 
        }
    }

此代码发布以下字符串:腺苷,血压,咖啡因,可卡因,心脏,神经递质,蜘蛛,网

这是数组中的每个标记名称。

但是,我想在foreach循环之外使用这个字符串,但每当我在foreach循环之外echo $tagnames;时,就像这样:

    $posttags = get_the_tags();
        if ($posttags) {
          foreach($posttags as $tag) {
            $tagnames = $tag->name . ', ' ; 
        }
      }    

echo $tagnames;

然后只有最后一个标签是web。为什么是这样?以及如何在foreach循环之外使用完整的字符串?

1 个答案:

答案 0 :(得分:1)

您需要做的是从循环中初始化一个空变量,然后使用.=语法连接标记。

$tagnames = '';
$posttags = get_the_tags();
if ($posttags) {
    foreach($posttags as $tag) {
        $tagnames .= $tag->name . ', ' ; 
    }
}    

echo $tagnames;