php7静态方法的链式调用

简介: 2018-1-11 20:25:48 星期四 情景: 以前想要链式调用必须先 new 一个对象, 然后 $obj->aa()->bb()... 现在PHP7 (php7.0.13  php7.2测试通过) 的静态方法也可以链式调用了 写法: A::aa()::bb()::cc(); ...

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

 

目录
相关文章
|
PHP
【PHP】static静态方法和普通方法的相互调用
【PHP】static静态方法和普通方法的相互调用
114 0
【PHP】static静态方法和普通方法的相互调用
|
PHP
PHP 父类静态方法中调用子类静态方法
get_called_class() 获取调用该方法的类,如果是在子类中调用父类方法,则返回子类的类名。 或者用static关键字: static::class 如果有多个子类,要在父类中调用子类方法,下面代码可实现: class parent{     abstract prote...
1079 0
|
PHP 自然语言处理
php链式调用(链式操作)
2017年6月28日 10:41:19 星期三 情景: 在多次处理数组的时候, 要自定义好多个临时变量, 起名字特别麻烦 于是, 就想到利用PHP的 1.魔法方法__call 2.不定参数, 参数自动解包的特性 写了一个简单的链式操作类: 调用举例: 1 $arr = [ ...
1229 0
|
PHP
php函数、类和对象以及类的封装、继承、类的静态方法、静态属性
原文:php函数、类和对象以及类的封装、继承、类的静态方法、静态属性 1、函数     php内置函数可以直接使用,如果没有安装php扩展即可     自定义函数 //函数function 函数名 function dump($var = null...
982 0
|
JavaScript PHP Go
php链式调用
转自默默 http://bbs.phpchina.com/thread-237323-1-1.html 写程序的人都喜欢偷懒,希望少打几行代码,并且让代码看起来很酷。 所以很多人写程序都会选择三元运算取代if..else...。
909 0
|
7月前
|
关系型数据库 MySQL PHP
PHP 原生操作 Mysql
PHP 原生操作 Mysql
81 0
|
7月前
|
关系型数据库 MySQL 数据库连接
PHP 原生连接 Mysql
PHP 原生连接 Mysql
107 0
|
7月前
|
关系型数据库 MySQL Unix
PHP MySql 安装与连接
PHP MySql 安装与连接
130 0