$players = $WL->query($sql); $player_map = array(); $Player = new APIModel('Player'); do { if ($players->attendancecount > 1) { $player = $Player->CreatePlayer(array('Token' => $Token, 'GivenName' => $players->first, 'Surname' => $players->last, 'OtherName' => '', 'UserName' => $players->username, 'Password' => $players->password, 'Persona' => $players->persona, 'Email' => $players->email, 'ParkId' => $park_map[$players->parkfk], 'KingdomId' => $KingdomId, 'Restricted' => $players->restricted, 'IsActive' => $players->attendancecount > 2 && strtotime($players->lastattendance) > strtotime("-6 month") ? 1 : 0, 'Waivered' => 0, 'Waiver' => '', 'WaiverExt' => '', 'HasHeraldry' => 0, 'Heraldry' => '', 'HasImage' => 0, 'Image' => '')); $reconciled->clear(); $reconciled->mundanefk = $players->mundanepk; $reconcile = array('Token' => $Token, 'ParkId' => $park_map[$players->parkfk], 'MundaneId' => $player['Detail'], 'Reconcile' => array()); $limit = 25; if ($reconciled->find()) { do { $reconcile['Reconcile'][] = array('ClassId' => $class_map[$reconciled->classfk], 'Quantity' => $reconciled->credits); } while ($reconciled->next() && $limit--); } $Player->SetPlayerReconciledCredits($reconcile); $count++; if ($count % 50 == 0) { gc_enable(); gc_collect_cycles(); set_time_limit(10); echo "{$count} records processed ... " . memory_get_usage() . " ..."; //break; } $player_map[$players->mundanepk] = $player['Detail']; } } while ($players->next()); unset($players); unset($reconciled); unset($reconcile); gc_enable();