API16

JSession/destroy

From Joomla! Documentation

< API16:JSession

The "API16" namespace is an archived namespace. This page contains information for a Joomla! version which is no longer supported. It exists only as a historical reference, it will not be improved and its content may be incomplete and/or contain broken links.

Description[edit]

Frees all session variables and destroys all data registered to a session



Syntax[edit]

destroy()


Returns[edit]

void

Defined in[edit]

libraries/joomla/session/session.php

Importing[edit]

jimport( 'joomla.session.session' );

Source Body[edit]

public function destroy()
{
        // session was already destroyed
        if ($this->_state === 'destroyed') {
                return true;
        }

        // In order to kill the session altogether, like to log the user out, the session id
        // must also be unset. If a cookie is used to propagate the session id (default behavior),
        // then the session cookie must be deleted.
        if (isset($_COOKIE[session_name()])) {
                $config =& JFactory::getConfig();
                $cookie_domain = $config->getValue('config.cookie_domain', '');
                $cookie_path = $config->getValue('config.cookie_path', '/');
                setcookie(session_name(), '', time()-42000, $cookie_path, $cookie_domain);
        }

        session_unset();
        session_destroy();

        $this->_state = 'destroyed';
        return true;
}



Examples[edit]

Code Examples[edit]