我尝试使用以下代码创建json编码,但它将完整的json包含为两个单独的项目,第二个json实体需要包含在属性中。
//我们只想在这里使用简单的php json编码,不需要过于复杂。
public function generate_json($table_data) {
$result=array();
$result[]=$table_data;
if ($table_data) {
$result[]= $this->exporter->get_property_gallery_data(20);
}
return json_encode($result);
}
public function get_table_data() {
$where = $this->get_query_where();
$query = "SELECT * FROM `#__{$this->export_table}` WHERE 1 " . $where;
return wpl_db::select($query, 'loadAssocList');
}
public function get_property_gallery_data($property_id) {
$items_table="wpl_items";
$where = $this->get_query_where();
$query = "SELECT * FROM `#__wpl_items` WHERE 1 " .$where.' and parent_id='.$property_id;
return wpl_db::select($query, 'loadAssocList');
}
如果您将以下json粘贴到查看器中,您可以获得示例
答案 0 :(得分:0)
有两个$ result数组。
使用array_push
将结果推送到单个数组中,然后使用json
答案 1 :(得分:0)
确定。
下面的代码可以解决问题
<?PHP
public function generate_json($table_data) {
$result=array();
$result1[]=$table_data;
if ($table_data) {
$result2[]= $this->exporter->get_property_gallery_data(20);
}
$result[] = array_merge($result1,$result2);
return json_encode($result);
}
public function get_table_data() {
$where = $this->get_query_where();
$query = "SELECT * FROM `#__{$this->export_table}` WHERE 1 " . $where;
return wpl_db::select($query, 'loadAssocList');
}
public function get_property_gallery_data($property_id) {
$items_table="wpl_items";
$where = $this->get_query_where();
$query = "SELECT * FROM `#__wpl_items` WHERE 1 " .$where.' and parent_id='.$property_id;
return wpl_db::select($query, 'loadAssocList');
}
?>