Отладку можно выполнять в PHP-коде и в коде шаблонов Smarty.
Отладка PHP-кода
-
wa_dump()
Выводит в браузер значения аргументов и прерывает исполнение PHP-кода.
-
wa_dumpc()
Выводит в браузер значения аргументов без прерывания исполнения PHP-кода.
-
waLog::dump()
Сохраняет значения в лог-файл.
-
waLog::log()
Сохраняет значение в лог-файл с приведением значения к типу
string.
Отладка кода в шаблонах Smarty
-
{debug}
Открывает консоль отладки Smarty.
-
{wa_tpl_vars}
Показывает список шаблонных переменных, доступных в файле.
-
{wa_dump(...)}, {...|wa_dump}
Показывает значения переменных с прерыванием исполнения кода шаблона.
-
{wa_dumpc(...)}, {...|wa_dumpc}
Показывает значения переменных без прерывания исполнения кода шаблона.
function wa_dump ($var_1 [, $var_2, ..., $var_n])
Выводит в браузер значения переданных аргументов и прерывает исполнение PHP-кода. Можно указать любое количество аргументов.
Параметры
-
$var_1, $var_2, ..., $var_n
Значения, которые нужно вывести в браузер.
Пример
$var_1 = 'foo'; $var_2 = 42; $var_3 = [1, 2, 3]; wa_dump($var_1, $var_2); wa_dump($var_3);
Результат
'foo' 42 // Значение переменной $var_3 не будет выведено, потому что исполнение PHP-кода было прервано предыдущим вызовом wa_dump().
function wa_dumpс ($var_1 [, $var_2, ..., $var_n])
Выводит в браузер значения переданных аргументов без прерывания исполнения PHP-кода. Можно указать любое количество аргументов.
Параметры
-
$var_1, $var_2, ..., $var_n
Значения, которые нужно вывести в браузер.
Пример
$var_1 = 'foo'; $var_2 = 42; $var_3 = [1, 2, 3]; wa_dumpc($var_1, $var_2); wa_dumpc($var_3);
Результат
'foo'
42
// Значение переменной $var_3 выведено, потому что исполнение PHP-кода НЕ прерывается вызовом wa_dumpc().
[
0 => 1,
1 => 2,
2 => 3,
]
public static function waLog::dump ($var_1 [, $var_2, ..., $var_n, $file = 'dump.log'])
Сохраняет значения в лог-файл. Можно указать любое количество аргументов. В качестве последнего аргумента можно указать имя лог-файла, если нужно использовать имя, отличное от стандартного dump.log.
Содержимое лог-файлов удобно просматривать с помощью приложения «Логи».
Параметры
-
$var_1, $var_2, ..., $var_n
Значения, которые нужно сохранить в лог-файл.
-
$file
Имя лог-файла. Если не указывать, то по умолчанию используется стандартное имя
dump.log.
Пример
$var_1 = 'foo'; $var_2 = 42; $var_3 = [1, 2, 3]; waLog::dump($var_1, $var_2, $var_3);
Результат
// Значения будут сохранены в файл wa-log/dump.log.
'foo'
42
[
0 => 1,
1 => 2,
2 => 3,
]
public static function waLog::log ($var, $file = 'error.log')
Сохраняет значение в лог-файл с приведением значения к типу string.
Содержимое лог-файлов удобно просматривать с помощью приложения «Логи».
Параметры
-
$var
Значение, которое нужно сохранить в лог-файл.
-
$file
Имя лог-файла. По умолчанию используется стандартное имя
error.log.
Пример
$var_1 = 'foo'; $var_2 = 42; waLog::log($var_1); waLog::log($var_2);
Результат
// Значения будут сохранены в файл wa-log/error.log — // по одному значению для каждого вызова waLog::log(). 'foo' 42
Пример
// Сохранение сразу нескольких значений в лог-файл
$var_1 = 'foo';
$var_2 = 42;
$var_3 = [1, 2, 3];
waLog::log(json_encode(compact('var_1', 'var_2', 'var_3')));
Результат
// Значения будет сохранены в файл wa-log/error.log.
{"var_1":"foo","var_2":42,"var_3":[1,2,3]}
{debug}
Открывает консоль отладки Smarty.
Пример
{debug}
{wa_tpl_vars}
Показывает список шаблонных переменных, доступных в файле.
Пример
{wa_tpl_vars}
Результат
[
'SCRIPT_NAME' => '/index.php',
'wa_url' => '/',
'wa_static_url' => waCdn object {
*cdn_list => []
*url => '/'
},
'wa_backend_url' => '/webasyst/',
'wa_app' => 'myapp',
'wa_app_url' => '/webasyst/myapp/',
'wa_app_static_url' => waCdn object {
*cdn_list => []
*url => '/webasyst/myapp/'
},
'wa_real_app_static_url' => '/wa-apps/myapp/',
'wa' => waViewHelper object { ** skipped ** },
'smarty' => NULL,
]
{wa_dump($var_1 [, $var_2, ..., $var_n])}
{$var|wa_dump}
Показывает значения переменных с прерыванием исполнения кода шаблона.
Пример
{$var_1 = 'foo'}
{$var_2 = 42}
// Можно вывести значения сразу нескольких переменных.
{wa_dump($var_1, $var_2)}
Результат
'foo' 42
Пример
{$var_1 = 'foo'}
{wa_dump($var_1)}
{wa_dump($var_2)}
{$var_2 = 42}
Результат
'foo' // Значение переменной $var_2 не будет выведено, потому что исполнение кода шаблона было прервано предыдущим вызовом wa_dump().
Пример
{$var = 'foo'}
// При использовании функции в качестве модификатора можно вывести только одно значение.
{$var|wa_dump}
Результат
'foo'
{wa_dumpc($var_1 [, $var_2, ..., $var_n])}
{$var|wa_dumpc}
Показывает значения переменных без прерывания исполнения кода шаблона.
Пример
{$var_1 = 'foo'}
{$var_2 = 42}
// Можно вывести значения сразу нескольких переменных.
{wa_dumpc($var_1, $var_2)}
Результат
'foo' 42
Пример
{$var_1 = 'foo'}
{wa_dumpc($var_1)}
{$var_2 = 42}
{wa_dumpc($var_2)}
Результат
'foo' // Можно выводить по очереди несколько разных значений, потому что исполнение кода шаблона НЕ прерывается предыдущими вызовами wa_dumpc(). 42
Пример
{$var = 'foo'}
// При использовании функции в качестве модификатора можно вывести только одно значение.
{$var|wa_dump}
Результат
'foo'









