ПРОБЛЕМА ОБНОВЛЕНА, ПРОЧИТАЙТЕ НИЖЕ
По какой-то причине мой CI не работает автоматически при загрузке представления.
Представление загрузки просто вызывается из контроллера
$this->load->view('templates/default.php');
Теперь. В загруженном представлении есть некоторые функции, которые не определены, если только не загружен надлежащий помощник. Обычно php выдает ошибку, но вместо этого он молча завершается неудачей. Понятия не имею почему. Шаблон выводится до строки, содержащей неопределенную функцию.
Мне потребовалось много времени, чтобы понять, где мой сценарий не работает.
Вот мои настройки:
- Windows 7 Ultimate
- Apache 2.2.15
- PHP 5.3.2 со следующими настройками отчетов об ошибках:
display_errors = On
display_startup_errors = On
error_reporting = E_ALL | E_STRICT
- CodeIgniter 1.7.2
Есть идеи, почему это так?
UPDATE
После дальнейшей отладки выяснилось, что PHP не сообщает о каких-либо ошибках, когда код php встроен в HTML и находится внутри тега HTML. Теперь это странно.
Возвращает фатальную ошибку:
<p><?php echo $bogus(); ?></p>
Это не происходит и молча терпит неудачу:
<p class="<?php echo $bogus(); ?>">paragraph</p>
Почему? : O
ОБНОВЛЕНИЕ 2
Дальнейшие исследования показали, что если в PHP указано error_log
, то в этом файле фактически сообщается об ошибках, но все же нет в браузере ... Опять же, почему?
ОБНОВЛЕНИЕ 3
На самом деле мой код должен немного отличаться. Проверил другую установку PHP на совершенно другой машине, и это подтвердило ошибку PHP. Сообщается здесь:
http://bugs.php.net/bug.php?id=52040