/** * Получение пользователей по списку ID используя общий кеш * * @param array $aUserId Список ID пользователей * @return array */ public function GetUsersByArrayIdSolid($aUserId) { if (!is_array($aUserId)) { $aUserId = array($aUserId); } $aUserId = array_unique($aUserId); $aUsers = array(); $s = join(',', $aUserId); if (false === ($data = $this->Cache_Get("user_id_{$s}"))) { $data = $this->oMapper->GetUsersByArrayId($aUserId); foreach ($data as $oUser) { $aUsers[$oUser->getId()] = $oUser; } $this->Cache_Set($aUsers, "user_id_{$s}", array("user_update", "user_new"), 60 * 60 * 24 * 1); return $aUsers; } return $data; }
/** * Получение пользователей по списку ID используя общий кеш * * @param array $aUsersId Список ID пользователей * * @return ModuleUser_EntityUser[] */ public function GetUsersByArrayIdSolid($aUsersId) { if (!$aUsersId) { return array(); } elseif (!is_array($aUsersId)) { $aUsersId = array($aUsersId); } else { $aUsersId = array_unique($aUsersId); } $aUsers = array(); $s = join(',', $aUsersId); if (false === ($data = E::ModuleCache()->Get("user_id_{$s}"))) { $data = $this->oMapper->GetUsersByArrayId($aUsersId); foreach ($data as $oUser) { $aUsers[$oUser->getId()] = $oUser; } E::ModuleCache()->Set($aUsers, "user_id_{$s}", array("user_update", "user_new"), 'P1D'); return $aUsers; } return $data; }