Catchable fatal error

fastin

Новичок
При выполнение функции:
PHP:
public function model($name) {
        $path = 'models/'.$name.'_model.php';
        if(file_exists($path)) {
            require_once 'models/'.$name.'_model.php';
            $modelName = $name.'_Model';
            $this->model = new $modelName();
        }
    }
Вылезает ошибка: Catchable fatal error: Object of class Help_Model could not be converted to string in ***\view.php on line ***

Вот код на который отсылается ошибка:
PHP:
    function parseVal($string)
    {
        $count = count($this->_data);
        for ($i = 0; $i < $count; $i++) {
            foreach ($this->_data[ $i ] as $key => $value) {
                $string = str_replace("{" . $key . "}", $value, $string);
            }
        }
        return $string;
    }
Часть кода страницы на которой выполняется данная функция:
PHP:
$controller = new $url[0];
        $controller->view->model($url[0]);
        if(isset($url[2])) {
            if(method_exists($controller, $url[1])) {
                $controller->{$url[1]}($url[2]);
            } else {
                echo 'Error!';
            }
        } else {
            if(isset($url[1])) {
                $controller->{$url[1]}();
            } else {
                $controller->index();
            }
         
        }
     
        $controller->view->view();
Как устранить данную ошибку?
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Использовать нормальный механизм автозагрузки, через PSR/composer.

Если не нравится такой подход - смотришь на строку, что тебе php выплюнул и разбираешься, почему ты к объекту обращаешься как к строке.
 
Последнее редактирование:

WMix

герр M:)ller
Партнер клуба
Код:
{new $url[0]}->{$url[1]}($url[2])
взглянуть бы на весь код и написать в адресной строчке чтото типо /user/delete/42
 

fastin

Новичок
Спасибо всем, проблема решена, тему можно закрыть.
 
Сверху