background image


 

protected

 

function 

__construct(){ 
... 

 

public

 

function

 setVal(){ 

... 


 

$a

 = A::getInstance(); 

 

$a

->setVal();

 
这样在调用之前就需要实例化一个类,虽然这个实例化实际上是单例,但感觉还是不舒服
这边的

register 就做到了直接使用静态方法调用

A::setVal();
大致的代码思路我写了个

demo

代码如下

:

 

class

 A{ 

private

 

static

 

$_instance

public

 

static

 

function

 getInstance(){ 

if

(self::_instance !==null){ 

return

 

$this

->_instance; 

else

 { 

return

 

new

 A(); 



 

public

 

function

 __construct(){ 

 

 

public

 

static

 

function

 setV(){ 

$a

 = self::getInstance(); 

$a

->setVal(); 


 

public

 

function

 setVal(){ 

...