CodeIgniter расширяет CI_URI неопределенным методом - PullRequest
0 голосов
/ 30 апреля 2018

Итак, я занимался обновлением чьего-то старого кода CI 1 до CI 3. В процессе. В частности, расширение класса URI не работает. Я прочитал документацию по CI, переключенную на __construct (), и переместил ее в каталог application / core. Я проверил SO, и все случаи верны, но я все еще получаю следующую ошибку:

Вызов неопределенного метода MY_URI :: last ()

Мой код ниже

class MY_URI extends CI_URI {

    function __construct()
    {
        parent::__construct();
    }

    function last()
    {
        return $this->segment(count($this->segments));
    }
}

Мысли о том, почему это может происходить с коммутатором? Проверяя StackOverflow, он сказал, что чек ваши настройки конфигурации с помощью конфигурации имеет правильный

$config['subclass_prefix'] = 'MY_';

Я звоню с:

$lastURI = $this->uri->last();

Обновление: я также попробовал

 exit('MY_URI.php loaded'); 

трюк вверху, который, кажется, работает, но все равно выдает ошибку, когда я замечаю это, и никогда не загружает расширение

Обновление: решено, это была ошибка типа ... чувствую себя немного глупо. Если администратор может это сделать, удалите этот вопрос, чтобы не загрязнять поиск в StackOverflow ненужными данными.

1 Ответ

0 голосов
/ 30 апреля 2018

Поместите файл MY_URI.php в application/core/MY_URI.php и обновите функцию следующим образом.

public function last(){      
    return $this->segment($this->total_segments());
}

назовите это как показано ниже

$last = $this->uri->last(); 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...