/** * @param int $uid Message UID * @param string $mbox_name Mailbox name * @return int Message (sequence) ID * @access private */ private function _uid2id($uid, $mbox_name = NULL) { if (!strlen($mbox_name)) { $mbox_name = $this->mailbox; } if (!isset($this->uid_id_map[$mbox_name][$uid])) { if (!($id = $this->get_cache_uid2id($mbox_name . '.msg', $uid))) { $id = $this->conn->UID2ID($mbox_name, $uid); } $this->uid_id_map[$mbox_name][$uid] = $id; } return $this->uid_id_map[$mbox_name][$uid]; }
/** * Finds message sequence ID for specified UID * * @param int $uid Message UID * @param string $mailbox Mailbox name * @param bool $force True to skip cache * * @return int Message (sequence) ID */ function uid2id($uid, $mailbox = null, $force = false) { if (!strlen($mailbox)) { $mailbox = $this->mailbox; } if (!empty($this->uid_id_map[$mailbox][$uid])) { return $this->uid_id_map[$mailbox][$uid]; } if (!$force && ($mcache = $this->get_mcache_engine())) { $id = $mcache->uid2id($mailbox, $uid); } if (empty($id)) { $id = $this->conn->UID2ID($mailbox, $uid); } $this->uid_id_map[$mailbox][$uid] = $id; return $id; }