Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php json转数组出错

php json转数组出错

WBOY
WBOYasal
2016-06-13 12:36:191412semak imbas

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


Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn