我有一个名为$brand_terms
的数组。我正在访问此数组中的两个对象。在这种情况下'name'和'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循环的最后一次迭代中删除这个逗号?
由于
答案 0 :(得分:7)
这种语法完全错误。你不能在数组声明中有一个循环。
而是创建数组,然后在循环期间将元素推入其中:
$brand_terms = get_terms("pa_brand");
$values = array();
foreach ($brand_terms as $brand_term){
$values[$brand_term->name] = $brand_$term->slug;
}
答案 1 :(得分:2)
实际上,问题根本不是JSONSchemaValidator.validate(jsonBody, <path_of_your_schema_file>);
JSONObject jsonObj = JSONObject.fromObject(jsonBody);
文字,实际上这不是有效的PHP。您不能在数组声明中包含,
循环。
最好的方法是定义数组,然后循环遍历foreach
返回值,如下所示:
get_terms()