ホームページ  >  記事  >  バックエンド開発  >  php jsonから配列へのエラー

php jsonから配列へのエラー

WBOY
WBOYオリジナル
2016-06-13 12:36:191412ブラウズ

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 までご連絡ください。