Beispiel #1
0
 /**
  * Получить список разговоров по списку айдишников, используя общий кеш
  *
  * @param array $aTalkId	Список ID сообщений
  * @return array
  */
 public function GetTalksByArrayIdSolid($aTalkId)
 {
     if (!is_array($aTalkId)) {
         $aTalkId = array($aTalkId);
     }
     $aTalkId = array_unique($aTalkId);
     $aTalks = array();
     $s = join(',', $aTalkId);
     if (false === ($data = $this->Cache_Get("talk_id_{$s}"))) {
         $data = $this->oMapper->GetTalksByArrayId($aTalkId);
         foreach ($data as $oTalk) {
             $aTalks[$oTalk->getId()] = $oTalk;
         }
         $this->Cache_Set($aTalks, "talk_id_{$s}", array("update_talk_user", "talk_new"), 60 * 60 * 24 * 1);
         return $aTalks;
     }
     return $data;
 }
Beispiel #2
0
 /**
  * Получить список разговоров по списку айдишников, используя общий кеш
  *
  * @param array $aTalkId    Список ID сообщений
  *
  * @return array
  */
 public function GetTalksByArrayIdSolid($aTalkId)
 {
     if (!is_array($aTalkId)) {
         $aTalkId = array($aTalkId);
     }
     $aTalkId = array_unique($aTalkId);
     $aTalks = array();
     $sCacheKey = 'talk_id_' . join(',', $aTalkId);
     if (false === ($data = E::ModuleCache()->Get($sCacheKey))) {
         $data = $this->oMapper->GetTalksByArrayId($aTalkId);
         foreach ($data as $oTalk) {
             $aTalks[$oTalk->getId()] = $oTalk;
         }
         E::ModuleCache()->Set($aTalks, $sCacheKey, array("update_talk_user", "talk_new"), 'P1D');
         return $aTalks;
     }
     return $data;
 }