Esempio n. 1
0
 private function _fetch($ids = array(), $pkname = "id")
 {
     $r = Cache_Global::GetObject($this->tableName, $ids, $pkname);
     $r = $r ? $r : array();
     $diff = array_diff($ids, array_keys($r));
     if (!$diff) {
         return $r;
     }
     $rr = DB::LimitQuery($this->tableName, array($pkname => array_values($diff)), array('one' => false), $this->readDB);
     Cache_Global::SetObject($this->tableName, $rr, $pkname);
     $r = array_merge($r, $rr);
     return Util_Array::SortArray($r, $ids, $pkname);
 }