オブジェクト指向のphpに飛び込もうとしています。私は自分自身の MVC フレームワークをゼロから構築しています。なぜなら、私は完全に制御したいからであり、それは良い学習練習になると考えているからです。
これは、名前に応じて異なるフォルダーにルーティングするために使用するルーターです (インデックス ファイルにオートローダー機能があります)。
class controller_router
{
public $controller;
public $action;
public $id;
public $freetext;
//set the url path variables
public function __construct($controller,$action,$id,$freetext)
{
$this->controller = $controller;
$this->action = $action;
$this->id = $id;
$this->freetext = $freetext;
}
//instantiate the main controller according to url
public function instantiateMainController()
{
$controller_name = 'controller_'.$this->controller;
$controller = new $controller_name;
}
}
私のブログコントローラーは次のようになります (アクションを取得できるかどうかをテストするだけです):
class controller_blog
{
public function __construct()
{
echo $this->action;
}
}
私の質問は、親 (ルーター) からアクション変数を取得するにはどうすればよいですか?
コマンドecho $this->action;
が機能していないようです。
また、あなたが提案できる他の改善点はありますか?私は初心者です!