PHP:Обнаруживать ошибки типа “неопределенная функция” до выполнения?

StackOverflow https://stackoverflow.com/questions/583205

  •  06-09-2019
  •  | 
  •  

Вопрос

Есть ли какой-либо инструмент, который поможет обнаружить потенциальные ошибки, такие как "неопределенная функция" в PHP-скрипте до того , как время выполнения?

Например, рассмотрим:

<?php
zarfnutz ( 'blah' );
?>

Если вы попросите интерфейс командной строки PHP проверить это на наличие синтаксических ошибок, он ответит, что их нет.Но, конечно, скрипт завершится неудачей, если вы попытаетесь его запустить, потому что в нем нет функции с именем "zarfnutz".

Я понимаю, что если язык достаточно самореферентен, буквально невозможно создать такой инструмент, который был бы гарантированно точным (я не знаю, действительно ли PHP достаточно самореферентен).Но в любом случае, определенно мог бы существовать инструмент, который мог бы, по крайней мере предупредить ты что, "зарфнутц" мог бы быть неопределенным, и такой инструмент был бы мне очень полезен.

Кто-нибудь знает о таком?

Заранее благодарю.

Это было полезно?

Решение

Я считаю, что это одна из особенностей PHPLint ( фплинт ).

Другие советы

Ну, я не знаю ни о каком инструмент чтобы сделать это, но function_exists и get_defined_functions являются частью ядра PHP.

Запустите php для файла с флагом lint (только проверка синтаксиса):

php -l FILE

Способ проверить - это использовать function_exists().Это не так гибко, как проверка через php -l, но она выполнит свою работу.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top