Совсем недавно var_dump () в PHP (в настоящее время использующий 5.6.23) начал печатать имя файла, а также номер строки перед фактическим сбросом моей переменной. Я не знаю никаких серьезных изменений на сервере, поэтому мне было интересно, почему это происходит, также нет ничего, что можно было бы найти в Интернете или в PHP-документации ( var_dump () )
Странное поведение также происходит при использовании командной строки:
> php -r 'var_dump("lol");' Command line code:1: string(3) "lol"
Хотя я просто привык к тому, что «строка (3)« lol »будет напечатана.
Это не showstopper, но сломал пару моих модульных тестов, где мне нужно было сравнить некоторый результат из API, который печатается с помощью var_dump (). Сначала я подумал, что это может быть связано с xdebug, но не может найти никакой директивы, которая, похоже, связана с этой проблемой.
Любой намек на то, что вызывает это, оценивается.
У вас включен xdebug.
Одна из новых функций относится к одной из первых вещей, которые я добавил в исходном Xdebug: сделать вывод var_dump () «симпатичным». Xdebug заменяет стандартную функцию PHP var_dump () своей собственной версией, если параметр xdebug.overload_var_dump не установлен в 0
Xdebug 2.3 улучшает перегрузку var_dump () с включением имени файла и номера строки, где вызывается var_dump (). Это давний запрос функции.
Вот мой вывод без xdebug;
>php -r "var_dump('lol')"; string(3) "lol"