Почему мой контроллер ошибок PHP работает с PHP 5, но не с PHP 7? - PullRequest
0 голосов
/ 29 января 2019

Я перевожу свой проект с PHP 5 на PHP 7.3, я внес изменения в расшифрованную функцию с помощью альтернативных функций.Но я столкнулся с проблемой с одним файлом контроллера.

Тот же код работает для версии PHP5, но когда я пытаюсь выполнить тот же код для PHP 7, он не выдает никакой ошибки, даже если ошибка не была добавлена ​​вфайл errorLog.Не могли бы вы помочь мне в этом.

Я загружаю свой файл контроллера 'error.php'.

<?php
class Error extends CI_Controller {    
      private $controller = "error";      
      public function __construct() {
      parent::__construct();
      if ($this->phpsession->get('USERID')) {
          $headerContent['controller'] = $this->controller;
          $this->load->view('xome/header', $headerContent);
      } else {
          header("Location:" . ASITEURL . "/login/");
      }
    }

    public function index() {
      $this->load->view('x-404');
      $this->load->view('xome/footer');
    }

    public function permission() {
      $this->load->view('x-permission');
      $this->load->view('xome/footer');
    }

    public function display() {
      $this->load->view('x-error');
      $this->load->view('xome/footer');
    }
}
?>

Когда я нажимаю на URL, он должен загрузить страницу просмотра, но не можетзагрузить любой файл представления.

http://localhost/--project имя папки - / error / Разрешение

Даже я проверил, нет ли синтаксической ошибки в контроллере, равно как и в любом файле представления.

1 Ответ

0 голосов
/ 29 января 2019

Начиная с PHP7, Error является зарезервированным именем класса: http://php.net/manual/en/class.error.php.

Измените его на другое:

class MyError extends CI_Controller 
{
   // ....
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...