/** * Load token by key, expire if necessary * * @param mixed $key * @return Model_User_Token */ public function load($key = null) { $object = parent::load($key); if ($object->loaded() && $object->expires < time()) { $object->delete(); } return $object; }