私は、明確に定義されておらず、変更の対象となるデータを渡しています(少なくとも、正式な仕様はなく、プロパティを追加/削除することもできます)。私はJSONとして受け取ったデータを制御できず、json_decode
を匿名オブジェクトにします。マルチレベルオブジェクト内の変数変数
データを理解するために、いくつかのマッピングを作成したいと思います。 、私は手でそれをやっていた場合はファーストネームが$Data->FirstName
で発見することができます意味するであろうと、現在の雇用者が$Data->Employer->CurrentEmployer
である私が好きな
$Data = json_decode($TheRawData);
$Mappings->Personal['Firstname']="FirstName";
$Mappings->Personal['Employer']="Employment->CurrentEmployer";
:データを仮定すると、人、のようなものを定義します保守性のためにデータベース内のマッピングの情報を格納する。以下に示すように、私は定義されたプロパティのオブジェクトを解析しようとすると残念ながら、:
foreach($Mappings->Personal as $Key=>$Value) {
print $Key . ": " . $Data->{$Value};
}
(予想通り)ファーストネームは完璧に動作しますが、それは第二エントリのセレクタを好きではない、それが複数にまたがるだと思われるので、繰り返し検索が必要になります。
オブジェクト内の任意の場所にマップできる方法があるかどうかを誰かに教えてもらえますか?
$プロフィールはどこから来たのですか?私は何かを逃したか? – Pete
おかげでPete。私は今それを変更しました。 - 基本 – Pete
@Pete - 謝罪、私はこのページをリフレッシュしていなかったので、あなたのコメントを見なかった - 私は間違いを見つけて修正した。よく目に付き、2回: – Basic