加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

一个类可以实例化另一个类吗? (PHP)

发布时间:2020-12-13 22:16:00 所属栏目:PHP教程 来源:网络整理
导读:我尝试了这个,当我尝试在类“second”中实例化类“first”时出现错误. 类“second”中的注释部分会导致错误. class first { public $a; function __construct() { $this-a = 'a'; }}class second { //$fst = new first(); //public showfirst() { //$firsta
我尝试了这个,当我尝试在类“second”中实例化类“first”时出现错误.

类“second”中的注释部分会导致错误.

class first {
    public $a;

    function __construct() {
        $this->a = 'a';
    }
}

class second {
    //$fst = new first();
    //public showfirst() {
        //$firsta = $this->first->a;
    //  echo "Here is first $a: " . $firsta;
    //}
}

编辑:

这导致服务器错误,即使我在类“second”中的所有内容都是类“first”的实例化.

class second {
    $fst = new first();
    //public showfirsta() {
    //  $firsta = $this->fst->a;
    //  echo "Here is first $a: " . $firsta;
    //}
}

解决方法

试试这个:

class First {
    public $a;

    public function __construct() {
        $this->a = 'a';
    }

    public function getA() {
      return $this->a;
    }
}

    class Second {
        protected $fst;
        public function __construct() {
          $this->fst = new First();
        }

        public function showfirst() {
           $firsta = $this->fst->getA();
           echo "Here is first {$firsta}";
        }
    }

    $test = new Second();
    $test->showfirst();

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读