去评论
dz插件网

showmessage函数的一个Bug

迪巴拉
2024/04/08 21:24:30
showmessage('请选择正确的操作', '', array(), array('showdialog' => 0, 'showmsg' => true));
原想:通过以上函数提示用户操作出问题,页面不跳转,

没有带参数 'locationtime'=>true 结果还是跳转了,跟踪代码发现以上函数调用的是 function_message.php的
函数  function dshowmessage($message, $url_forward = '', $values = array(), $extraparam = array(), $custom = 0)


  1.         $param = array(                'header'        => false,                'timeout'        => null,                'refreshtime'        => null,                'closetime'        => null,                'locationtime'        => null,                'alert'                => null,                'return'        => false,                'redirectmsg'        => 0,                'msgtype'        => 1,                'showmsg'        => true,                'showdialog'        => false,                'login'                => false,                'handle'        => false,                'extrajs'        => '',                'striptags'        => true,        );


虽然后面有
  1.         if($param['locationtime'] !== null) {                $param['locationtime'] = $param['locationtime'] === true ? $timedefault : $param['locationtime'];        }

据测试(php 7.4)这个条件一直是成立的,也就是一定会进入,给赋值页面刷新的时间。

请查一下是不是一个Bug
我知道答案 回答被采纳将会获得1 贡献 已有1人回答