我从 php 5 升级到 7.2,本地没有问题(需要一些更改,但它解决了)。
我的一项功能在生产服务器中不起作用。代码如下所示:
$someBool = in_array($some, array("asd", "fgh", "etc"));
如果我对此进行 var_dump,结果为 UNKNOWN:0,但如果我在此下方进行 vardump(在转储之前没有任何 if 站),则该功能正常工作,结束转储结果将为 bool(真)或布尔(假)。
(我不覆盖这个变量)
如果我再次注释 var_dump 行,该函数将无法正常工作。
有谁知道什么会导致这种行为?谢谢你的帮助。
在原始函数中:
$needCmdText = in_array($fieldName,array(
'cmdpreid','cmdpostid','cmdskipid',
'cmdfixid','cmdexpid','cmdsysid'
));
$fieldName 总是来自客户端的“cmdexpid”。(在我的测试用例中)还有一个有趣的消息,一个简单的 echo 也解决了这个问题,但应该是在 this 下。