2017-07-23 26 views
0

在php中使用::我们可以访问一个非静态成员函数,但是如何使用范围解析运算符访问同样的成员变量?如何在PHP中使用范围解析运算符访问非静态成员变量?

<?php 
class abc 
{ 
    public static $data="i am static membervaribale".'</br>'; 

    public $data1="i am not a static membervaribale".'</br>'; 
    public function a() 
    { 
     echo "I am a non static method".'</br>'; 
    } 

    public function getsize() 
    { 
     return self::$data; 
    } 
} 

echo abc::$data; 

//echo abc::$data1;//showing error; 

echo abc::a(); 

echo abc::getsize(); 

$obj=new abc; 
echo $obj->data1; 


?> 

回答

1

不静态成员的访问类是基于$此。 所以,你应该用

$this->data1; 

,为ABC类的一个新的对象()

$myObejct = new abc(); 

$myObject->data1; 
+0

才能访问使用范围解析操作像我们在做什么非静态方法? – sradha

+0

不,你必须实例化一个基于类的对象使用新的和访问相关的属性.. – scaisEdge

+0

确定....谢谢 – sradha

相关问题