I am trying to unset and destroy a specific session and I came across different methods and would like to know which is the efficient method to do the work and deals with most php versions as well.
First method:
unset($_SESSION['site1']);
session_destroy();
Second method:
session_unset();
session_destroy();
Update: [RESOLVED]
<?php
session_start();
unset($_SESSION['site1']);
?>
Just use unset
to unset any array index. And Session itself is an array. So use unset
to unset your particular session index. You are wrong in the case of session_unset
and session_destroy
functions as they don't accept any parameters.
Also the point to note is that, you should not be using session_destroy
as it will unset all available sessions. For eg. while loggin out, you may not be wanting to lose your products in cart formed using session.
Edit
session_destroy — Destroys all data registered to a session
session_unset — Frees all session variables
session_unset just clears the $_SESSION variable. It’s equivalent to doing:
$_SESSION = array();
So this does only affect the local $_SESSION variable instance but not the session data in the session storage.
In contrast to that, session_destroy destroys the session data that is stored in the session storage (e.g. the session file in the file system).
Everything else remains unchanged.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With