私は、オブジェクトである値を持つキーを含むオブジェクトを持っています。それらのオブジェクトの中には、キーの1つの値として別のオブジェクトがあります。私は4つのループを実行することによって必要な深いネストされたオブジェクトから特定の価値を得ることができましたが、そうするより良い方法があるのだろうかと思っていました。ここで私が持っているオブジェクトがある:他のオブジェクトの中のオブジェクトをループする
{
record1: {
key1: value1,
key2: value2,
key3: {
key_x1: value_x1,
key_x2: value_x2,
key_x3: value_x3
}
}
record2: {
key1: value1,
key2: value2,
key3: {
key_x1: value_x1,
key_x2: value_x2,
key_x3: value_x3
}
}
}
ので、各レコード(record1
とrecord2
など)のために私はkey_x1
から値を引き出し、配列に保存する必要があります。 4 foreachループを持たないでこれを達成する方法に関するアイデア?
編集:ここでは、私はちょうど醜いた作品、持っているものです。
$mainObject
$a = [];
$dateArray = [];
foreach ($mainObject as $individualOb) {
$dates = $individualOb->getDate();
$a[] = $dates;
}
if (empty($a)) {
return true;
} else {
foreach ($a as $date) {
foreach ($date as $key => $value) {
if ($key == 'date') {
$dateArray[] = $value;
}
}
}
foreach ($dateArray as $value) {
if(strtotime($value) < strtotime('-1 year')) {
return true;
}
}
}
をあなたは間違っている問題と、どのようなエラーが発生し、あなたが受け取った結果を解決しようとしてきた方法のいくつかの努力を示してください。 – alexi2
それはjsonの文字列ですか? – RomanPerekhrest
[オブジェクトを配列に変換するにはどうすればよいですか?](http://stackoverflow.com/questions/2476876/how-do-i-convert-an-object-to-an-array) – user2182349