Класс Debugger
Предоставляет настраиваемое ведение логов и обработку ошибок.
Debugger переопределяет стандартную обработку ошибок PHP, чтобы предоставить трассировки стека и расширенное ведение логов
Ссылка: http://book.cakephp.org/3.0/ru/development/debugging.html#namespace-Cake\Error
Расположено в Error/Debugger.php
Подробное описание метода
_arraysource protected static
_array( array $var , integer $depth , integer $indent )
Экспортирует объект типа массив. Фильтрует ключи, используемые в конфигурации источника данных.
Следующие ключи заменяются на ***
- password
- login
- host
- database
- port
- prefix
- schema
Параметры
- массив
$var - Массив для экспорта.
- целое число
$depth - Текущая глубина, используется для отслеживания рекурсии.
- целое число
$indent - Текущий уровень вложенности.
Возвращает
stringЭкспортированный массив.
_exportsource protected static
_export( mixed $var , integer $depth , integer $indent )
Защищенная функция экспорта, используемая для отслеживания вложенности и рекурсии.
Параметры
- смешанное
$var - Переменная для вывода.
- целое число
$depth - Остаточная глубина.
- целое число
$indent - Текущий уровень вложенности.
Возвращает
stringВыведенная переменная.
_highlightsource protected static
_highlight( string $str )
Обертывает функцию highlight_string на случай, если серверная API не реализует функцию, как это происходит в случае с интерпретатором HipHop
Параметры
- строка
$str - Строка для преобразования.
Возвращает
stringстрока
_objectsource protected static
_object( string $var , integer $depth , integer $indent )
Обрабатывает преобразование объекта в строку.
Параметры
- строка
$var - Объект для преобразования.
- целое число
$depth - Текущая глубина, используемая для отслеживания рекурсии.
- целое число
$indent - Текущий уровень вложенности.
Возвращает
stringстрока
См. также
Cake\Error\Debugger::exportVar()addFormatsource public static
addFormat( string $format , array $strings )
Добавление формата вывода или обновление формата в Debugger.
Debugger::addFormat('custom', $data);
Где $data - массив строк, использующих замену переменных Text::insert(). Переменные шаблона должны быть в формате {:id} . Форматер ошибок может иметь следующие ключи:
- 'error' - Используется для контейнера сообщения об ошибке. Получает следующие переменные шаблона:
id,error,code,description,path,line,links,info - 'info' - Комбинация
code,contextиtrace. Будет заполняться содержимым других ключей шаблона. - 'trace' - Контейнер для трассировки стека. Получает следующие переменные шаблона:
trace - 'context' - Контейнерный элемент для переменных контекста. Получает следующие шаблоны:
id,context - 'links' - Массив HTML-ссылок, используемых для создания ссылок на другие ресурсы. Обычно используется для создания javascript-ссылок для открытия других разделов. Ключи ссылок:
code,context,help. См. формат вывода js для примера. - 'traceLine' - Используется для создания строк в трассировке стека. Получает следующие переменные шаблона:
reference,path,line
В качестве альтернативы, если вы хотите использовать пользовательскую функцию для форматирования, вы можете использовать ключ callback и указать вызываемый объект:
Debugger::addFormat('custom', ['callback' => [$foo, 'outputError']];
Функция обратного вызова может ожидать два параметра. Первый - массив всех данных об ошибке. Второй - отформатированные строки, сгенерированные с помощью других строк шаблона. Ключи, такие как info, links, code, context и trace будут присутствовать в зависимости от других шаблонов в типе формата.
Параметры
- строка
$format - Используемый формат, включая 'js' для HTML с JavaScript, 'html' для прямого HTML-вывода или 'txt' для неформатированного текста.
- массив
$strings - Строки шаблона или вызываемый объект для формата вывода.
Возвращает
arrayНабор установленных строк формата.
checkSecurityKeyssource public static
checkSecurityKeys( )
Проверяет, были ли изменены солевой ключ и значение seed шифра приложения от значения по умолчанию.
dumpsource public static
dump( mixed $var , integer $depth 3 )
Рекурсивно форматирует и выводит содержимое переданной переменной.
Параметры
- смешанное
$var - Переменная для вывода.
- целое число
$depthoptional 3 - Глубина вывода. По умолчанию 3.
См. также
Cake\Error\Debugger::exportVar()Ссылка
http://book.cakephp.org/3.0/ru/development/debugging.html#outputting-valuesexcerptsource public static
excerpt( string $file , integer $line , integer $context 2 )
Извлекает фрагмент из файла и выделяет указанную строку кода.
Использование:
Debugger::excerpt('/path/to/file', 100, 4);
Выше указано возвращение массива из 8 элементов. 4-й элемент будет предоставленной строкой и будет обернут в <span class="code-highlight"></span>. Все строки также обрабатываются с помощью highlight_string(), поэтому к ним применяется базовая подсветка синтаксиса PHP.
Параметры
- строка
$file - Абсолютный путь к файлу PHP.
- целое число
$line - Номер строки для выделения.
- целое число
$contextoptional 2 - Количество строк контекста, извлекаемых выше и ниже $line.
Возвращает
arrayВыделенный набор строк
См. также
http://php.net/highlight_stringСсылка
http://book.cakephp.org/3.0/ru/development/debugging.html#getting-an-excerpt-from-a-fileexportVarsource public static
exportVar( string $var , integer $depth 3 )
Преобразует переменную в строку для вывода отладки.
Примечание: Содержимое следующих ключей будет заменено на *****:
- password - login - host - database - port - prefix - schema
Это делается для защиты данных базы данных, которые могут быть случайно показаны в сообщении об ошибке, если CakePHP развернут в режиме разработки.
Параметры
- строка
$var - Переменная для преобразования.
- целое число
$depthoptional 3 - Глубина вывода. По умолчанию 3.
Возвращает
stringПеременная в формате строки
formatTracesource public static
formatTrace( array|Exception $backtrace , array $options [] )
Форматирует трассировку стека на основе предоставленных параметров.
Параметры
-
depth- Количество кадров стека для возврата. По умолчанию 999 -
format- Формат, который вы хотите получить. По умолчанию используется текущий выбранный формат. Если формат 'array' или 'points', возвращение будет массивом. -
args- Показывать аргументы функций? Если true, аргументы каждого вызова метода будут отображаться. -
start- Кадр стека, с которого нужно начать генерацию трассировки. По умолчанию 0
Параметры
- массив|Исключение
$backtrace - Трассировка как массив или объект исключения.
- массив
$optionsoptional [] - Формат для вывода трассировки стека.
Возвращает
mixedОтформатированная трассировка стека.
Ссылка
http://book.cakephp.org/3.0/ru/development/debugging.html#generating-stack-tracesgetInstancesource public static
getInstance( string|null $class null )
Возвращает ссылку на экземпляр объекта Debugger singleton.
Параметры
- string|null
$classнеобязательно null - Имя класса.
Возвращает
objectобъект
getTypesource public static
getType( mixed $var )
Получить тип данного переменной. Для объектов возвращается имя класса.
Параметры
- mixed
$var - Переменная, тип которой нужно получить.
Возвращает
stringТип переменной.
logsource public static
log( mixed $var , integer|string $level 'debug' , integer $depth 3 )
Создаёт запись в файле журнала. Запись журнала содержит трассировку стека вызовов, а также экспортирует переменную с помощью exportVar. По умолчанию, журнал записывается в журнал отладки.
Параметры
- mixed
$var - Переменная или содержимое для записи в журнал.
- integer|string
$levelнеобязательно 'debug' - Тип журнала. По умолчанию 'debug'.
- integer
$depthнеобязательно 3 - Глубина вывода. По умолчанию 3.
outputAssource public static
outputAs( string|null $format null )
Получить/Установить формат вывода для отображения ошибок Debugger.
Параметры
- string|null
$formatнеобязательно null - Формат вывода ошибок. Оставьте null, чтобы получить текущий формат.
Возвращает
string|nullВозвращает null при установке. Возвращает текущий формат при получении.
Исключения
InvalidArgumentExceptionПри выборе формата, которого нет.
outputErrorsource public
outputError( string $data )
Принимает обработанный массив данных из ошибки и отображает его в выбранном формате.
Параметры
- string
$data - Данные для вывода.
tracesource public static
trace( array $options [] )
Выводит трассировку стека на основе предоставленных параметров.
Параметры
-
depth- Количество кадров стека для возврата. По умолчанию 999 -
format- Формат возвращаемых данных. По умолчанию используется текущий выбранный формат. Если формат 'array' или 'points', возвращается массив. -
args- Показывать аргументы функций? Если true, будут отображаться аргументы каждого вызова метода. -
start- Кадр стека, с которого начинается генерирование трассировки. По умолчанию 0
Параметры
- array
$optionsнеобязательно [] - Формат для вывода трассировки стека.
Возвращает
mixedОтформатированная трассировка стека.
Ссылка
http://book.cakephp.org/3.0/ru/development/debugging.html#generating-stack-tracestrimPathsource public static
trimPath( string $path )
Укорачивает пути к файлам, заменяя путь к корню приложения на 'APP', и путь к ядру CakePHP на 'CORE'.
Параметры
- string
$path - Путь для укорочения.
Возвращает
stringНормализованный путь
Краткое описание свойств
© 2005–2016 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
http://api.cakephp.org/3.1/class-Cake.Error.Debugger.html