Heim >Backend-Entwicklung >PHP-Tutorial > 子类使用父类变量解决思路
子类使用父类变量
class A {
var $authKey='1111';
}
class B extends A{
__construct(){
echo parent::authKey;
}
}
报错Undefined class constant 'authKey'
------解决方案--------------------
错误信息的意思是未定义的常量。你少了个$
但$authKey不是静态变量,所以你不能这么静态调用
正确的做法
class A { // 不建议类中用var来声明变量 public $authKey='1111'; } class B extends A{ // B将拥有A的所有非private成员 public function __construct(){ echo $this->authKey; } } <br><font color="#e78608">------解决方案--------------------</font><br>var 是在php4以前的版本,后来就省略了。 <br><font color="#e78608">------解决方案--------------------</font><br>var最好还是视情况带上!有些低版本支持 <br><font color="#e78608">------解决方案--------------------</font><br>var 是php 4.X中的,,,5+里使用是为了向下兼容,,<br><br>新写的程序,基本可以放弃这种写法了<br><br>你的代码也可以这样用<br>
class A { const authKey='1111'; } class B extends A{ public function __construct(){ echo parent::authKey; } } new B; <div class="clear"> </div>