したがって、以下のような構造のオブジェクトがあり、それらはすべてstdClass
オブジェクトとして返されます
$person->contact->phone;
$person->contact->email;
$person->contact->address->line_1;
$person->contact->address->line_2;
$person->dob->day;
$person->dob->month;
$person->dob->year;
$album->name;
$album->image->height;
$album->image->width;
$album->artist->name;
$album->artist->id;
など... (これらの例は互いにリンクされていないことに注意してください)。
contact->phone
の直接プロパティとして呼び出す変数変数を使用することは可能$person
ですか?
例えば:
$property = 'contact->phone';
echo $person->$property;
これはそのままでは機能せず、スローされるE_NOTICE
ため、これを達成するための別の方法を考えようとしています。
何か案は?
プロキシメソッドに関する回答への回答:
そして、このオブジェクトがライブラリからのものであり、それを使用して次のように新しいオブジェクトに配列マップを設定していることを除いて:
array(
'contactPhone' => 'contact->phone',
'contactEmail' => 'contact->email'
);
次に、マップを foreach して新しいオブジェクトを設定します。代わりにマッパーを巻き込むことができると思います...