Php 何时将类定义中的变量声明为空值?

Php 何时将类定义中的变量声明为空值?,php,Php,这两个例子有什么不同 class cl_Configuration { private static $_instance = NULL; ... 及 这些完全一样。声明一个没有值的PHP类属性将在默认情况下将“value”设置为NULL,除非另有暗示、继承或覆盖 您可以通过一个简单的测试来证明这一点: 有关下面的代码,请参见 <?php error_reporting(E_ALL); ini_set('display_errors', 1); class cl_Conf

这两个例子有什么不同

class cl_Configuration
{
   private static $_instance = NULL;

   ...


这些完全一样。声明一个没有值的PHP类属性将在默认情况下将“value”设置为NULL,除非另有暗示、继承或覆盖

您可以通过一个简单的测试来证明这一点: 有关下面的代码,请参见

<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);

class cl_Configuration {
    public static $_instance = NULL;
}

class cl_Configuration_2 {
    public static $_instance;
}

var_dump(cl_Configuration::$_instance);
var_dump(cl_Configuration_2::$_instance);

第一个在
isset($this->\u实例)
上不返回
true
,第二个a
false
?@CamilStaps No,两者都是false,因为对于
isset()
,NULL总是false@MichaelBerkowski好吧,我猜是这样的:-)我之前测试过,但我想知道是否还有其他含义,thx!没问题,谢谢你的提问,欢迎来到StackOverflow!
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);

class cl_Configuration {
    public static $_instance = NULL;
}

class cl_Configuration_2 {
    public static $_instance;
}

var_dump(cl_Configuration::$_instance);
var_dump(cl_Configuration_2::$_instance);