我是PHP的新手并使用Yii开发应用程序。我有一个数据库对象,我得到了所有表的记录。我想从该对象创建一个关联数组,然后在json_encode中编码该数组。但是,我想要的输出,即对象而不是数组,不会出现。任何人都可以帮忙,PLZ?
我的代码:
$info = array();
$category = Category::find()->all();
foreach($category as $key => $value) {
$info[]= array(
"name" =>$value->name,
"value" =>$value->description
) ;
}
echo json_encode($info,JSON_FORCE_OBJECT);
输出:
{"0":{"name":"test","value":"A"},"1":{"name":"test 2","value":"B"}}
期望输出:
{"category":[{"name":"test","value":"A"},{"name":"test 2","value":"B"}]}
答案 0 :(得分:2)
尝试使用它:
$info2['category']=$info;
echo json_encode($info2);
答案 1 :(得分:0)
在json_encode
之前使用array_values()$info = array_values($info);
echo json_encode($info,JSON_FORCE_OBJECT);