有人可以解释这是否是PHP的正确行为,我期望session_start()返回false并获得警告说session_name包含非法字符.
代码重现:
<?php
session_name('m m');
var_dump(session_start());
if(!isset($_SESSION['count'])) {
$_SESSION['count'] = 0;
}
else {
$_SESSION['count']++;
}
echo session_name();
echo $_SESSION['count'];
Run Code Online (Sandbox Code Playgroud)
运行一次:
bool(true) m m0
重装页面:
bool(true) m m0
应该是(如果会议工作):
bool(true) m m1
session_start()返回true表示会话已启动.该$_SESSION['count']指示就是不起作用.会话名称中的非法字符没有警告.
我在手册页上找不到任何提示,也没有关于会话的有效字符的定义.