首頁 >後端開發 >php教程 > php json转数组出错

php json转数组出错

WBOY
WBOY原創
2016-06-13 12:36:191441瀏覽

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

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

2:获取并decode
$jsonGetDoctorInfoData = json_encode($jsonGetDoctorInfoData);
$objGetDoctorInfoData  = json_decode($jsonGetDoctorInfoData);
输出:
<br />
{"mecdoctor":[{"doctorId":"","doctorName":"XXXX", "doctorprice":"122","expertise":"XXXXX","departments":"医内科","doctorTitle":"主任医师","doctorPhoto":"hmh"}]}<br />
<br />

3:将json转换成数组
<br />
//解析JSON数据<br />
	function _json_decode($json){<br />
		$comment = false;<br />
		$out = '$x=';<br />
		for ($i=0; $i<strlen($json);$i++){<br />
			if (!$comment){<br />
				if ( ($json[$i] == '{') || ($json[$i] == '[') )<br />
					$out .= ' array(';<br />
				else if (($json[$i] == '}') || ($json[$i] == ']'))<br />
					$out .= ')';<br />
				else if ($json[$i] == ':')<br />
					$out .= '=>';<br />
				else<br />
					$out .= $json[$i];          <br />
			}else<br />
				$out .= $json[$i];<br />
			if($json[$i]== '"' && $json[($i-1)]!="\\")<br />
				$comment = !$comment;<br />
		}<br />
		eval($out.";");<br />
		<br />
		return $x;<br />
	}<br />

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


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn