У меня это работает, но оно грязное, я думаю.
Сначала я сохраняю экземпляры в хеш-таблице, хеш создается из visitorId и homeId.
Затем я создаю хэш visitorId и homeId массива других игр.
Затем я извлекаю экземпляр, используя $ table [$ hash].
Массивы, которые я имел, не одинаковы по длине, так что это работает. Я не знаю, если это слишком грязно, чтобы размещать здесь, но это работает: P
foreach($pGames as $pGame) {
$hash = $pGame->getHomeId() . '-' . $pGame->getVisitingId();
$table[$hash] = $pGame;
}
foreach($games as $game) {
$hash = $game->getHomeId() . '-' . $game->getVisitingId();
$pGame = $table[$hash];
if($pGame instanceof Game) {
//use the instance
}
}