За последние 24 часа нас посетили 17334 программиста и 1720 роботов. Сейчас ищут 983 программиста ...

Ошибки компилятора PHP

Тема в разделе "Прочие вопросы по PHP", создана пользователем ArtK, 26 апр 2009.

  1. ArtK

    ArtK Активный пользователь

    С нами с:
    21 апр 2009
    Сообщения:
    16
    Симпатии:
    0
    Такой вопрос какие ошибки со списка ниже компилятор может определять?
    Syntax, Parse, Logical, Fatal
     
  2. Apple

    Apple Активный пользователь

    С нами с:
    13 янв 2007
    Сообщения:
    4.984
    Симпатии:
    2
    Явно логические ошибки не может определить НИ ОДИН компилятор.
    Он может в некоторых случаях уведомить о том, что ВОЗМОЖНО там что-то не так, но явно сказать и определить логическую ошибку не может никто, кроме самого программиста.

    Остальные все определяются без проблем ещё на этапе интерпритации.
     
  3. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    Syntax и Parse это одно и то же, и в php оно называется вторым словом. Fatal еще называется error (по крайней мере отображение задается параметром E_ERROR)Поскольку PHP - язык все-таки интерпретируемый, скрипт может продолжать работу, игнорируя некоторые ошибки. Например, говорят что переменные можно не объявлять. На самом деле обычно необъявленная переменная при первом использовании вызывает ошибку типа Notice, но такая ошибка не мешает работе скрипта. Всего есть 2 вида ошибок, прерывающих выполнение скрипта: Parse и Fatal, первая возникает при нарушении синтаксиса, вторая - когда продолжение скрипта логически невозможно (вызывается несуществующая функция например). Всего 4 типа ошибок: notice, warning, error, parse, при чем последние две - фатальные (прерывают работу скрипта). На самом деле, скрипт проверяется на наличие ошибок до выполнения (прекомпиляция), поэтому скрипт, имеющий фатальные ошибки, вообще не выполняется.