1

継承クラスで保護されたプロパティにアクセスしようとしましたが、$this->getContainer() で値のプロパティを取得すると、NULL 値が取得され、理由がわかりません...

私は自分のコードを非常に単純化しました:

<?php

abstract class Kernel
{
    protected $container;

    public function __construct() {
        $this->setContainer(['config' => 'OK']);
    }

    public function setContainer($array) {
        $this->container = $array;
    }

    public function getContainer() {
        return $this->container;
    }
}

class AppKernel extends Kernel {

}

class FrontController extends AppKernel
{
    public function __construct() {
        var_dump($this->getContainer());
    }
}

// Init
$kernel = new AppKernel();

$FrontController = new FrontController();

通常、新しいFrontControllerを呼び出すと、保護されたプロパティに配列が出力されるはずですが、NULLが得られました。

誰かが私を助けてくれますか?ありがとう!

4

1 に答える 1