json形式は以下の通りです
{"loginResult":{"code":"005","teamId":"1","password":"123","role":"employee","roleId": "2" }}
私が使用する CI フレームワークは、モデル内で Member_Model オブジェクトを定義します。属性には、code、teamId、password、role、roleId が含まれます
上記の JSON データをオブジェクトに変換して Member_Model に割り当てる方法
$json = '{"loginResult":{"code":"005","teamId":"1","password":"123","role":"员工","roleId":"2"}}';$arr = json_decode($json);$mm = new Member_Model();foreach ($arr->loginResult as $key => $value) { $mm->$key = $value;}
ci フレームワークを使用したことがありません。 jsonをC#のようなオブジェクトに直接変換しますか?
このように走査する理由は、JSON データ内のデータの順序がわかっているためです。JSON データの順序がわからない場合、配列のどの要素がどの属性に割り当てられているかをどうやって知ることができるでしょうか。そうすると、値を代入する前に foreach でキーを判断しなければならず、面倒です。返される json が単一のオブジェクトである場合は、それほど面倒なことはありません。もっと簡単な方法はありますか?もっと簡単な解決策を教えてください。
$o->loginResult それはあなたが望むオブジェクトではありませんか?
$o->loginResult エラー
非オブジェクトのプロパティを取得しようとしていますコードを投稿して見てください
$バッファは json 文字列です
$result = json_decode($buffer, true); があります
$result はすでに配列です
オブジェクト モードでアクセスできます $member = $result->LoginResult; ではありませんかジョーク?
どうすればよいでしょうか?
$result = json_decode($buffer, true); の場合
$member = $result['loginResult']; の場合
$result = json_decode($)バッファ);
$member = $result->loginResult;