这是我从数据库绑定的rest apis数据,它是使用数组表示法绑定的数据。
$result = array('status' => "Success");
$result['data']['skill'] = array();
foreach($skill->processApi('user_skills',true) as $row_data){
array_push($result['data']['skill'],$row_data);
}
$result['data']['user_projects'] = array();
foreach($project->processApi('user_projects',true) as $row_data){
array_push($result['data']['user_projects'],$row_data);
}
$result['data']['user_experience'] = array();
foreach($experience->processApi('user_experience',true) as $row_data){
array_push($result['data']['user_experience'],$row_data);
}
$result['data']['user_education'] = array();
foreach($education->processApi('user_education',true) as $row_data){
array_push($result['data']['user_education'],$row_data);
}
$result['data']['user_basic_details'] = array();
foreach($basic_info->processApi('user_basic_details',true) as $row_data){
array_push($result['data']['user_basic_details'],$row_data);
}
$result['data']['user_contact_details'] = array();
foreach($contact_info->processApi('user_contact_details',true) as $row_data){
array_push($result['data']['user_contact_details'],$row_data);
}
$this->response($this->json($result), 200);由于php中的array_push方法,它给出的json数据如下图所示,包含数组符号(,)。
{
"status": "Success",
"data": {
"skill": [
{
"skill_id": "2",
"skill_title": "Sports"
}
],
"user_projects": [
{
"project_title": "workless",
"project_id": "1",
"date_start": "2015-08-28",
"date_end": "2016-01-23",
"project_description": "online recruitment service",
"is_ongoing": "1"
}
],
"user_experience": [
{
"experience_id": "5",
"job_title": "Software Engineer",
"job_des": "Currently developing a data locality aware virtual machine placement strategy in cloud based Hadoop deployments. ResponsibilitiesReview and research on large-scale data processing platforms, data analytic tools and algorithms, streaming process, and data management",
"company_name": "Schrdinger",
"date_start": "2015-08-28",
"date_end": "2016-01-23",
"current_work": "1"
}
],
"user_education": [
{
"coun_name": "Afghanistan",
"uni_title": "UOR",
"uni_logo": null,
"school": "DS School",
"grade": "12",
"description": "Science Stream",
"field_studied": "field_studied",
"added_date": "2015-09-05 14:00:03",
"date_start": "2015-08-28",
"date_end": "2016-02-23",
"degree": "Computer Science"
}
],
"user_basic_details": [
{
"basic_details": "With degree and 2 years experiences.",
"user_fname": "Mohamed",
"user_sname": "Nifras",
"user_im": "nifrasbcs",
"bday": "1991-12-29",
"gender": "1",
"marital_status": "1"
}
],
"user_contact_details": [
{
"user_email": "nifrasnx@yahoo.com",
"user_address_1": "No 32, New Market Road",
"user_address_2": "Oddamavadi-01",
"user_im": "nifrasbcs",
"phone_mobile": "752786188",
"phone_land": "652257153"
}
]
}
}如何在没有数组(,)表示法的情况下获取json数据,就像这样
{
"status": "Success",
"data": {
"skill":
{
"skill_id": "2",
"skill_title": "Sports"
}
,
"user_projects":
{
"project_title": "workless",
"project_id": "1",
"date_start": "2015-08-28",
"date_end": "2016-01-23",
"project_description": "online recruitment service",
"is_ongoing": "1"
}
,
"user_experience":
{
"experience_id": "5",
"job_title": "Software Engineer",
"job_des": "Currently developing a data locality aware virtual machine placement strategy in cloud based Hadoop deployments. ResponsibilitiesReview and research on large-scale data processing platforms, data analytic tools and algorithms, streaming process, and data management",
"company_name": "Schrdinger",
"date_start": "2015-08-28",
"date_end": "2016-01-23",
"current_work": "1"
}
,
"user_education":
{
"coun_name": "Afghanistan",
"uni_title": "UOR",
"uni_logo": null,
"school": "DS School",
"grade": "12",
"description": "Science Stream",
"field_studied": "field_studied",
"added_date": "2015-09-05 14:00:03",
"date_start": "2015-08-28",
"date_end": "2016-02-23",
"degree": "Computer Science"
}
,
"user_basic_details":
{
"basic_details": "With degree and 2 years experiences.",
"user_fname": "Mohamed",
"user_sname": "Nifras",
"user_im": "nifrasbcs",
"bday": "1991-12-29",
"gender": "1",
"marital_status": "1"
}
,
"user_contact_details":
{
"user_email": "nifrasnx@yahoo.com",
"user_address_1": "No 32, New Market Road",
"user_address_2": "Oddamavadi-01",
"user_im": "nifrasbcs",
"phone_mobile": "752786188",
"phone_land": "652257153"
}
}
}如何实现,请帮帮忙?
发布于 2015-11-12 19:53:12
在JSON中,语法{}表示一个类,而[]表示一个数组,所以如果你想创建你想要的结果,你需要首先在一个合适的对象中创建数据,即一个类或数组。
您可以简单地使用PHP stdClass()创建一个类,作为开始,您可以这样做
$result = new stdClass();
$result->status = 'success';
$result->data = new stdClass();
$result->data->skill = array();
foreach($skill->processApi('user_skills',true) as $row_data) {
$result->data->skill[] = $row_data;
}
$result->data->user_projects = array();
foreach($project->processApi('user_projects',true) as $row_data) {
$result->data->user_projects[] = $row_data;
}
. . .
. . .
$this->response($this->json($result), 200);https://stackoverflow.com/questions/33670525
复制相似问题