我有一个名为$brand_terms
的数组。我正在访问这个数组中的两个对象。在本例中为"name"answers"slug"。然后,我尝试在一个名为$values
的关联数组中设置这些对象的值。代码如下:
$brand_terms = get_terms("pa_brand");
$values = array(
foreach ($brand_terms as $brand_term){
$brand_term->name => $brand_$term->slug,
}
);
我遇到的问题是分离器,
。所以$brand_term->name => $brand_$term->slug,
末尾的逗号。如果循环位于数组中的最后一个值,则不需要逗号,代码也会中断。有没有一种很好的方法可以从foreach循环的最后一次迭代中删除这个逗号?
感谢
该语法完全错误。数组声明中不能有循环。
相反,创建数组,然后在循环期间将元素推入其中:
$brand_terms = get_terms("pa_brand");
$values = array();
foreach ($brand_terms as $brand_term){
$values[$brand_term->name] = $brand_$term->slug;
}
实际上,问题根本不在于,
文本,事实上这不是有效的PHP。数组声明中不能有foreach
循环。
最好的方法是定义数组,然后循环通过get_terms()
返回值,如下所示:
$values = array();
foreach( get_terms('pa_brand') as $term )
{
$values[$term->name] = $term->slug;
}