检查php中是否存在会话

Cha*_*kar 3 php session

在我的 php 函数中,我想检查会话是否存在。基于会话的存在,我想返回 true 或 false。

我有一个登录函数,它在登录时使用session_start();并将值存储到会话变量中,当注销时它会做session_destroy();

现在我想检查会话是否存在。我怎样才能做到这一点

function ifsessionExists(){
    // check if session exists?
    if($_SESSION[] != ''){
    return true;
    }else{
    return false;
    }
}
Run Code Online (Sandbox Code Playgroud)

ald*_*n27 7

使用isset功能

function ifsessionExists(){
// check if session exists?
  if(isset($_SESSION)){
    return true;
  }else{
    return false;
  }
 }
Run Code Online (Sandbox Code Playgroud)

您还可以使用empty功能

 function ifsessionExists(){
// check if session exists?
  if(!empty($_SESSION)){
    return true;
  }else{
    return false;
  }
 }
Run Code Online (Sandbox Code Playgroud)


小智 5

PHP >= 5.4.0 版本的推荐方式

if (session_status() == PHP_SESSION_NONE) {
    session_start();
}
Run Code Online (Sandbox Code Playgroud)

来源:http : //www.php.net/manual/en/function.session-status.php

对于 PHP < 5.4.0 的版本

if(session_id() == '') {
    session_start();
}
Run Code Online (Sandbox Code Playgroud)