За последние 24 часа нас посетили 16737 программистов и 1644 робота. Сейчас ищут 1057 программистов ...

Проверка PHP синтаксиса

Тема в разделе "Прочие вопросы по PHP", создана пользователем evll, 9 фев 2008.

  1. evll

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

    С нами с:
    3 май 2007
    Сообщения:
    15
    Симпатии:
    0
    Адрес:
    Lithuania
    Я хочу проверить код на наличие ошибок в синтаксисе. Для этого использую php -l команду. Проблема в том, что не могу получить из нее непосредственно ошибку, например "unexpected T_VARIABLE bla bla bla". exec, shell_exec, system и иже с ними выдают мне только Errors parsing file.

    Как мне получить само сообщение ошибки?

    Пробывал две функции из комментариев к shell_exec, которые якобы дают и stderr, stdout, но ошибки не видать.
     
  2. DarkElf

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

    С нами с:
    22 окт 2006
    Сообщения:
    1.632
    Симпатии:
    0
    evll

    поставь локальный апач + php + mysql в нем настрой display_errors = on и будет счастье:)
     
  3. evll

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

    С нами с:
    3 май 2007
    Сообщения:
    15
    Симпатии:
    0
    Адрес:
    Lithuania
    Оказалось, что сам шел не выводит сообщения об ошибке. Будем общаться с админом.
     
  4. Anonymous

    Anonymous Guest

    Учтите, что для консольной версии и для модуля могут использоватся разные php.ini - по крайней мере у меня так. И там может быть отключен вывод ошибок.
     
  5. evll

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

    С нами с:
    3 май 2007
    Сообщения:
    15
    Симпатии:
    0
    Адрес:
    Lithuania
    Аккурат, именно это и была проблема.

    Вот решение:
    php -d error_reporting=2047 -l <file>