当前位置:Gxlcms > PHP教程 > phpjson转数组出错

phpjson转数组出错

时间:2021-07-01 10:21:17 帮助过:3人阅读

php json转数组出错求助
1:先输出json

//组合医生信息JSON
$jsonDoctorInfo = "{\"mecdoctor\":[";
$jsonDoctorInfo .= "{\"doctorId\":\"".$doctorId."\",\"doctorName\":\"".$strDoctorName."\", \"doctorprice\":\"".$strPrice."\",\"expertise\":\"".$strExpertise."\",\"departments\":\"".$strdepartments."\",\"doctorTitle\":\"".$strTitle."\",\"doctorPhoto\":\"".$strDoctorPhoto."\"}";
$jsonDoctorInfo .= "]}";

2:获取并decode
$jsonGetDoctorInfoData = json_encode($jsonGetDoctorInfoData);
$objGetDoctorInfoData = json_decode($jsonGetDoctorInfoData);
输出:

{"mecdoctor":[{"doctorId":"","doctorName":"XXXX", "doctorprice":"122","expertise":"XXXXX","departments":"医内科","doctorTitle":"主任医师","doctorPhoto":"hmh"}]}


3:将json转换成数组

//解析JSON数据
function _json_decode($json){
$comment = false;
$out = '$x=';
for ($i=0; $i if (!$comment){
if ( ($json[$i] == '{') || ($json[$i] == '[') )
$out .= ' array(';
else if (($json[$i] == '}') || ($json[$i] == ']'))
$out .= ')';
else if ($json[$i] == ':')
$out .= '=>';
else
$out .= $json[$i];
}else
$out .= $json[$i];
if($json[$i]== '"' && $json[($i-1)]!="\\")
$comment = !$comment;
}
eval($out.";");

return $x;
}

4:出现问题
Parse error: syntax error, unexpected T_DOUBLE_ARROW in /home/u945504094/public_html/config/config.inc.php(876) : eval()'d code on line 1


分享到:


------解决方案--------------------
没有问题呀
$s = '{"mecdoctor":[{"doctorId":"","doctorName":"XXXX", "doctorprice":"122","expertise":"XXXXX","departments":"医内科","doctorTitle":"主任医师","doctorPhoto":"hmh"}]}';

print_r(_json_decode($s));

function _json_decode($json){
$comment = false;
$out = '$x=';
for ($i=0; $i if (!$comment){
if ( ($json[$i] == '{')
------解决方案--------------------
($json[$i] == '[') )
$out .= ' array(';
else if (($json[$i] == '}')
------解决方案--------------------
($json[$i] == ']'))
$out .= ')';
else if ($json[$i] == ':')
$out .= '=>';
else
$out .= $json[$i];
}else
$out .= $json[$i];
if($json[$i]== '"' && $json[($i-1)]!="\\")
$comment = !$comment;
}
eval($out.";");

return $x;
}
Array
(
[mecdoctor] => Array
(
[0] => Array
(
[doctorId] =>

人气教程排行