php session_start在条件不匹配时执行

时间:2014-07-01 12:16:51

标签: php session

<?php
session_save_path('/home/path/to/session/');
if(strpos($_SERVER['PHP_SELF'],'test'))
{
    echo 'a';
}else{
    session_start();
}

此脚本创建会话文件,而if为true(文件名为test.php)?

1 个答案:

答案 0 :(得分:0)

你应该改变

if(strpos($_SERVER['PHP_SELF'],'test'))

if(strpos($_SERVER['PHP_SELF'],'test') === false)

if(strpos($_SERVER['PHP_SELF'],'test') !== false)

取决于您的需求(很难说您的代码)。否则,如果$_SERVER['PHP_SELF']test开头,则strpos函数返回0,在语句中将其视为false,您应该替换。要比较确切的值和类型,您需要使用===!==运算符