function unset_userdata($newdata = array(), $path = false, $regex = false) { if (is_string($newdata)) { if ($path) { foreach (array_keys($this->userdata) as $key) { if (strpos($key, $newdata . '/') === 0) { unset($this->userdata[$key]); } } } if ($regex) { foreach (array_keys($this->userdata) as $key) { if (preg_match($newdata, $key)) { unset($this->userdata[$key]); } } } } parent::unset_userdata($newdata); }
function unset_userdata($newdata = array()) { if (is_string($newdata)) { $newdata = array($newdata => ''); } $parent_newdata = array(); if (count($newdata) > 0) { foreach ($newdata as $key => $val) { // if( substr($key, 0, strlen($this->flashdata_key)) == $this->flashdata_key ) if (!in_array($key, $this->builtin_props)) { $my_key = $this->my_prefix . $key; unset($_SESSION[$my_key]); } else { $parent_newdata[$key] = $val; } } } if ($parent_newdata) { parent::unset_userdata($parent_newdata); } }
/** * {@inheritDoc} */ public function forget() { $this->store->unset_userdata($this->key); }
/** * Delete a session variable from the "userdata" array * * @access array * @return void */ function unset_userdata($newdata = array()) { if ($this->is_custom_session) { return $this->session_driver->unset_userdata($newdata); } else { return parent::unset_userdata($newdata); } }
/** * Clear session * @return $this */ public function removeAll() { $keys = array_values($this->sessionKeys); $this->session->unset_userdata(array_combine($keys, $keys)); return $this; }