3

このクラスのインスタンスを作成すると、エラーが発生します

Parse error: syntax error, unexpected '__construct' (T_STRING), 
expecting variable    (T_VARIABLE) on line 9. 

これは私がインスタンスを作成する方法です:

    function controller_from_str($controller_name)
    {
        $controllers_namespace = 'MVCBP\\Controllers\\';
        $controller = $controllers_namespace 
            . $controller_name . 'Controller';

        return new $controller();
    }

に変更__construct()すると動作しUserController()ます。Windows 7 で PHP 5.4 を使用しています。これは予期された動作ですか?

これが私のクラスです:

<?php
namespace MVCBP\Controllers;

use MVCBP\Core as Core;
use MVCBP\Models as Models;
use MVCBP\Repositories as Repos;

class UserController implements Core\ControllerInterface
{
    private $UserRepo;

    public function __construct()
    {
        $this->UserRepo = new Repos\UserRepository();
    }

    public function Index()
    {
        echo '<h1>User</h1>';
    }

    public function Create()
    {
        //TODO: if GET/POST
        $user = new Models\User();
        /*var_dump($user->getDb());*/
        render_view('User/Create');
    }

    private function CreateGet()
    {

    }

    private function CreatePost()
    {

    }
}
4

0 に答える 0