//精品推荐
$is_best = array();//$goods是从数据表查询出的符合条件的数据
foreach ($goods as $key => $value) {//如果is_best为1,说明才是满足属于精品分类下面的if($value['is_best'] == 1){$is_best[$key]['title'] = $value['title']; //标题$is_best[$key]['image'] = $value['image']; //图像$is_best[$key]['team_price'] = $value['team_price']; //商品本店价格$is_best[$key]['market_price'] = $value['market_price']; //商品市场价格}
}
//转换为json格式
echo json_encode( array(//精品推荐'is_best' => $is_best,
));
今天在实现循环遍历,并转化为APP接口json格式,返回的信息是:
{"is_best": ['20':{"title": "韩露竹盐焗油护理洗发乳洗发露去油污头屑强韧发根护发日化用品","image": "goods\/20180730\/14830707323121.jpg","team_price": "18.00","market_price": "35.00"}, '21':{"title": "融氏\/Rongs 玉米油5L 食用油 粮油批发 烹饪 非转基因 绿色认证","image": "goods\/20180730\/14830788825986.jpg","team_price": "80.00","market_price": "100.00"}]
}
这种格式在前端接收时,“is_best”下面的输出,由于是不是从0开始,需要做出调整:
首先想到的是,再做一次循环(二次循环):
//定义一个变量每次循环都是从0开始
$i = 0;
foreach($value as $value1){$is_best[$key][$i]['title'] = $value1['title'];$is_best[$key][$i]['image'] = $value1['image'];$is_best[$key][$i]['team_price'] = $value1['team_price'];$is_best[$key][$i]['market_price'] = $value1['market_price'];//执行完之后,数组下标加1$i++;
}
还有一个是最简单的方法:array_values() 函数。array_values() 函数返回一个包含给定数组中所有键值的数组,但不保留键名。被返回的数组将使用数值键,从 0 开始并以 1 递增。
在转化格式的输出中:
echo json_encode( array(//精品推荐//输出前加上array_values()'is_best'=>array_values($is_best),
));
输出结果:
{"is_best": [{"title": "韩露竹盐焗油护理洗发乳洗发露去油污头屑强韧发根护发日化用品","image": "goods\/20180730\/14830707323121.jpg","team_price": "18.00","market_price": "35.00"}, {"title": "融氏\/Rongs 玉米油5L 食用油 粮油批发 烹饪 非转基因 绿色认证","image": "goods\/20180730\/14830788825986.jpg","team_price": "80.00","market_price": "100.00"}]
}
转换之后,在APP接口输出默认就是从0开始,并以 1 递增。
本文链接:https://my.lmcjl.com/post/11915.html
展开阅读全文
4 评论