我使用"Ampps and流浪者"Scotch Box"作为本地服务器,我的问题是==
和===
操作员按我的预期工作,但在托管时它们的行为非常不同,例如我检查站点状态和用户角色,如此
if($status ===0 and $request->user()->role!==1){
}else{
}
这个if语句在本地流浪者和Ammps上都非常有效,但在我的主机上总是其他部分有效,有任何PHP设置可以设置这种差异吗?
我有一个类似的问题,但比较不完全相同:
@if ($var !== 0)
以下代码在两台机器上都有效:
@if (($var != 0) || (is_null($var)))
我没有尝试,但颠倒逻辑应该可以解决你的问题:
if ((($status == 0) && (!is_null($status)) and ($request->user()->role!=1))
注意:您不需要在第二个条件中检查NULL
,因为它被转换为0
,因此不相等。