应该是
!!
(它将值转换为布尔值)但根本不需要它。我想原来的编码员搞错了
~
对于
!
然后他们又补充说
(bool)
为了达到预期的效果(因为,正如你在问题中注意到的,
~~
是不允许的)。
这个
boolean value
属于
$field->req
与的相同
!! $field->req
和
(bool) ~~$field->req
(和
(bool)$field->req
顺便说一句)。
我会把
(bool) ~~
部分完全得到更小更干净的代码。
按提问者编辑
以下内容:
在php中~~的唯一作用是从浮点值中删除小数。
是的。
见以下结果:
$a = 2.123;
$b = -2.123;
$c = new stdClass();
$d = ["a",2,"c"];
$e = "lord";
$f = -3;
$g = false;
$h = null;
$j = -2.99;
$k = 2.99;
var_dump(~~$a);
var_dump(~~$b);
// var_dump(~~$c); // error
// var_dump(~~$d); // error
var_dump(~~$e);
var_dump(~~$f);
// var_dump(~~$g); // error
// var_dump(~~$h); // error
var_dump(~~$j);
var_dump(~~$k);
var_dump(!!$a);
var_dump(!!$b);
var_dump(!!$c);
var_dump(!!$d);
var_dump(!!$e);
var_dump(!!$f);
var_dump(!!$g);
var_dump(!!$h);
var_dump(!!$j);
var_dump(!!$k);
int(2)int(-2)string(4)“主”int(-3)int(-2)int(2)
bool(真)bool(真)bool(真)bool(真)bool(真)bool(真)bool(真)
bool(假)bool(假)bool(真)bool(真)