Rumah >pembangunan bahagian belakang >tutorial php >think关于php后期绑定问题
类似与如下代码
<code>class father(){ public function __construct(){ echo "father"; } public static function instance($options = []) { if (is_null(self::$instance)) { self::$instance = new static($options); } return self::$instance; } } </code>
然后通过url 或者配置 有子类来继承father 调用 instance()方法来实列化
请问如何确定 static调用的那个子类.
类似与如下代码
<code>class father(){ public function __construct(){ echo "father"; } public static function instance($options = []) { if (is_null(self::$instance)) { self::$instance = new static($options); } return self::$instance; } } </code>
然后通过url 或者配置 有子类来继承father 调用 instance()方法来实列化
请问如何确定 static调用的那个子类.
在方法中可以通过get_called_class()
这个函数来获得调用此方法的类名,针对后期静态绑定而设计。
namespace
命名空间