/** * Create a Collection of User(s) * * @param array $userArray * @throws InvalidArgumentException * @return \Klout\Collection\User */ public static function createUserCollection(array $userArray) { $users = new UserCollection(); if (empty($userArray)) { return $users; } foreach ($userArray as $userData) { if (!is_array($userData) || empty($userData['userData'])) { throw new InvalidArgumentException('Invalid user data.'); } // Need to init the array even if empty to avoid errors later if (!isset($userData['influenceData'])) { $userData['influenceData'] = array(); } if (!isset($userData['topicsData'])) { $userData['topicsData'] = array(); } $user = new self($userData['userData'], $userData['influenceData'], $userData['topicsData']); if (!$user->getKloutId()) { throw new InvalidArgumentException('Invalid user data.'); } $users[(string) $user->getKloutId()] = $user; } return $users; }