我实际上已经找到了如何自己解决这个特殊问题,但它仍然让我发疯,想知道为什么问题才会开始.我有条件声明:
if($_SESSION['authenticated'] = 1) {
DOSTUFF;
}
Run Code Online (Sandbox Code Playgroud)
现在在此if语句之前,我知道$_SESSION['authenticated']通过使用是空的print_r().但是,在执行此代码块之后,此条件语句将1分配给$_SESSION['authenticated'],这使得if语句无论如何都会评估为true!我发现使用办法解决isset(),但我仍然不知道为什么一个条件语句将一个值分配给摆在首位的变量时,它应该只计算该条件是否为真或假.