PHP延迟静态绑定示例分享

前端技术 2023/09/07 PHP

没怎么用过这个新特性,其实也不算新啦,试试吧,现在静态类的继承很方便了

<?php
class A {
 protected static $def = \'123456\';

 public static function test() {
  echo get_class(new static);
 }

 public static function test2() {
  echo static::$def;
 }
}

class B extends A {
 protected static $def = \'456789\';
}

class C extends A {
 protected static $def = \'abcdef\';
}

echo B::test();
echo \'<br>\';
echo C::test();
echo \'<br>\';
echo B::test2();
echo \'<br>\';
echo C::test2();
echo \'<br>\';
echo A::test();
echo \'<br>\';
echo A::test2();
echo \'<br>\';

// 输出结果
B
C
456789
abcdef
A
123456

本文地址:https://www.stayed.cn/item/19156

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。