php7静态方法的链式调用

2018-1-11 20:25:48 星期四

情景:

以前想要链式调用必须先 new 一个对象, 然后 $obj->aa()->bb()...

现在PHP7 (php7.0.13  php7.2测试通过) 的静态方法也可以链式调用了

写法:

A::aa()::bb()::cc();

实现:

 1 class A
 2 {
 3     public static $a = 0;
 4     
 5     public static function aa()
 6     {
 7         self::$a++;
 8         return self::class;
 9     }
10     
11     public static function bb()
12     {
13         self::$a++;
14         return self::class;
15     }
16     
17     public static function cc()
18     {
19         echo self::$a;
20     }
21 }
22 
23 
24 A::aa()::bb()::cc(); //2
原文地址:https://www.cnblogs.com/iLoveMyD/p/8270465.html