Задать вопрос

Ошибка в php коде.Что нужно изменить?

Пытаюсь писать собственную CMS и возникла такая проблема:33a6dc78ad7c4cab9e10d82af1726745.PNG

Исходник:
class Router
{
    private $routes = [];
    private $dispatcher;
    private $host;

    /**
     * Router constructor.
     * @param $host
     */
    public function __construct($host)
    {
        $this->host = $host;
    }

    /**
     * @param $key
     * @param $pattern
     * @param $controller
     * @param string $method
     */
    public function add($key, $pattern, $controller, $method = 'GET')
    {
        $this->routes[$key] = [
            'pattern'    => $pattern,
            'controller' => $controller,
            'method'     => $method
        ];
    }

    public function dispatch($method, $uri)
    {
        return $this->getDispatcher()->dispatch($method, $uri);
    }

    /**
     * @return mixed
     */
    public function getDispatcher()
    {
        if($this->dispatcher == null)
        {
            $this->dispatcher = new UrlDispatcher();

            foreach ($this->routes as $route)
            {
                $this->dispatcher->register($route['method'], $route['pattern'], $route['controller']);
            }


        }

        return $this->dispatcher;
    }
  • Вопрос задан
  • 306 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 2
kpa6uu
@kpa6uu
Программист Талибана [Пыхерский Алибаба]
@novrm
Разве трудно понять?
Где-то вы передаете в конструктор НОЛЬ переменных, а требуется лишь ОДНА.

Кстати - так чисто удовлетворить любопытство?
Вам некуда тратить свое драгоценно время, чем на переизобретение CMS?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы