内爆一组对象并仅过滤一个 属性

implode an array of objects and filter only by one property

我如何分解一组对象并仅过滤一个 属性(在我的例子中是 category)?

对象看起来像这样:

[335] => Array
(
    [category_id] => 335
    [parent_id] => 0
    [category] => Category name
    [aa__aaa00_google_product_category] => 0
)

这是当前的聪明代码:

{foreach from=$categories item=category}
   {'| '|implode:$category}
{/foreach}

您可以输出每个 category 属性,然后(使用 last)检查您是否在数组的最后一个元素。如果不是,则输出一个|,否则不输出任何内容。

{foreach from=$categories item=category name=cat}
  {$category.category}{if $smarty.foreach.cat.last}{else}|{/if}
{/foreach}