比較する2つの配列を次に示します。
array_a(
[0] => array('userid' => aaa, 'created_time' => XXXX,),
[1] => array('userid' => bbb, 'created_time' => XXXX,),
[2] => array('userid' => ccc, 'created_time' => XXXX,)
)
array_b(
[0] => array('userid' => aaa, 'created_time' => XXXX,),
[1] => array('userid' => ccc, 'created_time' => XXXX,),
[2] => array('userid' => ddd, 'created_time' => XXXX,)
)
次の条件に一致するすべての要素を取得したい:array_aのユーザーIDがarray_bにあり、array_aのcreated_timeがarray_bのより新しい
これを行うには次のコードを使用しますが、配列が巨大な場合は時間がかかります。
for array_a{
for array_b{
if (a[user_id] = b[user_id] && a[created_time] > b[created_time]) {
//target got
}
}
}
このロジックを効率的に行う方法はありますか?
回答ありがとうございます。IDは一意です。array_a([0] => array('userid' => aaa、'created_time' => XXXX、)、[1] => array('userid' => bbb、'created_time' => XXXX、)を変換する方法、)
フォーム配列(aaa => XXXX、bbb => XXXX)に?