Я использую Ubuntu с PHP 7.
PHP 7.0.5-3+donate.sury.org~xenial+1 (cli) ( NTS ) Copyright (c) 1997-2016 The PHP Group Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies with Xdebug v2.4.0, Copyright (c) 2002-2016, by Derick Rethans
Когда я отлаживаю скрипт PHP, используя var_dump
чтобы показать некоторую переменную:
<?php var_dump('tmp string'); var_dump(true);
Ниже приведен его вывод:
/var/www/example.com/test.php:3:string 'tmp string' (length=10) /var/www/example.com/test.php:4:boolean true
Почему он всегда выводит путь к файлу раньше?
Я хочу, чтобы он выводился, как показано ниже:
string 'tmp string' (length=10) boolean true
Результат, который вы видите, – это расширение Xdebug. (Без расширения, var_dump
выводит простой, неформатированный текст.)
Из Xdebug 2.3 параметр xdebug.overload_var_dump
имеет новое значение по умолчанию 2
которое добавляет имя файла и номер строки к выходу из любого вызова var_dump
. Дополнительную информацию см. В документах . Я согласен, что это не так полезно, особенно для простого вывода, например, коротких строк / чисел.
Чтобы удалить имя файла, вы можете установить в старое значение 1
в файле php.ini:
[xdebug] xdebug.overload_var_dump = 1
Кажется, у вас включен Xdebug. Вы можете отключить его из файла php.ini Найти для Xdebug в php.ini и заменить его на
xdebug.remote_autostart=0 xdebug.remote_enable=0 xdebug.profiler_enable=0