Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

call to undefined function session_unregister() when trying output

Tags:

php

mysql

monitoring this error when logout. thank you

function doLogout()
{
if(isset($_SESSION['username']));
{
unset($_SESSION['username']);
session_unregister('username');
}
header('Location: logme.php');
exit;
}
like image 924
naju Avatar asked May 20 '14 11:05

naju


4 Answers

session_unregister isn't available since php 5.4, so you can remove the function call.

An equal call would be just unset - so you can replace

session_unregister('username');

with

unset($_SESSION['username']);

if you don't want to rewrite your whole code, you can write your own session_unregister function

if (!function_exists('session_unregister')) {
    function session_unregister($var) { unset($_SESSION[$var]); }
}

This function doesn't do the same, but is in most cases sufficient

like image 126
Philipp Avatar answered Nov 12 '22 20:11

Philipp


  1. omit ;
  2. from php.net session_unregister()

This function has been DEPRECATED as of PHP 5.3.0 and REMOVED as of PHP 5.4.0.

function doLogout()
    {
    if(isset($_SESSION['username']))
    {
    unset($_SESSION['username']);       
    }
    header('Location: logme.php');
    exit;
    }
like image 39
Haim Evgi Avatar answered Nov 12 '22 22:11

Haim Evgi


According to the PHP manual, session_unregister() function has been DEPRECATED ...

PHP Manual

use unset($_SESSION["key"]); instead

like image 3
sumgeek Avatar answered Nov 12 '22 20:11

sumgeek


If you are using PHP >= 5.4

This function has been DEPRECATED as of PHP 5.3.0 and REMOVED as of PHP 5.4.0. http://php.net/manual/en/function.session-unregister.php

like image 1
Alex Savchenko Avatar answered Nov 12 '22 21:11

Alex Savchenko