Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 对象初始化以“开始”&引用;_Php - Fatal编程技术网

Php 对象初始化以“开始”&引用;

Php 对象初始化以“开始”&引用;,php,Php,我刚找到 $foo=新条($var,$var2) PHP代码的一部分。“!”是什么意思?!在这个例子中,它只是一个否定词,毫无用处。它没有什么特别的意思。我想有个打字错误 考虑到以下准则: $foo = new Bar($var, $var1); var_dump(!$foo); // bool(false) var_dump($foo == true); // bool(true) 将对象强制转换为布尔值将始终导致true 将一个对象与另一个不带==的对象进行比较将始终得到t

我刚找到
$foo=新条($var,$var2)

PHP代码的一部分。“!”是什么意思?

!在这个例子中,它只是一个否定词,毫无用处。

它没有什么特别的意思。我想有个打字错误

考虑到以下准则:

$foo = new Bar($var, $var1);
var_dump(!$foo);        // bool(false)
var_dump($foo == true); // bool(true)
  • 将对象强制转换为布尔值将始终导致
    true
  • 将一个对象与另一个不带
    ==
    的对象进行比较将始终得到
    true

因此,在赋值的左半部分对一个对象使用否定在这里没有任何效果。

在这里,它完全没有意义

是“逻辑非”运算符,它将计算结果为
TRUE
的内容转换为
FALSE
,反之亦然。它在PHP中没有其他特殊意义

它仅在布尔测试或赋值中才有意义,例如:

$false = FALSE;
if (!$false) {
  // This code will be executed
}

$true = !$false;
// $true will now be TRUE
在您示例中使用的上下文中,实例化对象毫无意义:

  • 返回一个对象-在布尔测试中,每个对象的每个实例都将计算为
    TRUE
    ,只有一个例外:一个空的
    simplexmlement
  • 抛出异常。在这种情况下,新实例将被分配到的变量仍将具有其先前的值(该值可能计算为false),但执行将立即离开当前过程,因此测试将永远不会被计算

  • 它周围的代码是什么?这似乎是件奇怪的事情,除非你想在条件语句中告诉我们。i、 e.“如果这个类初始化了,那么不要这样做”我想你可以把它转换成
    @
    :)@是用来抑制错误的,A)与此无关,B)是非常糟糕的做法。没有任何代码,只有一个字符串。我认为这只是没用的打字错误。无论如何,谢谢