Spec-Zone.ru › CakePHP 2.7

Класс Debugger

Предоставляет пользовательскую логирование и обработку ошибок.

Debugger переопределяет стандартную обработку ошибок PHP для предоставления трассировок стека и улучшенного ведения журнала.

Пакет: Cake\Utility
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT License
Ссылка: http://book.cakephp.org/2.0/ru/development/debugging.html#debugger-class
Расположение: Cake/Utility/Debugger.php

Подробное описание методов

__constructsource public

__construct( )

Конструктор.

_arraysource protected static

_array( array $var , integer $depth , integer $indent )

Экспортирует объект массива. Фильтрует ключи, используемые в конфигурации источника данных.

Следующие ключи заменяются на ***:

  • пароль
  • логин
  • хост
  • база данных
  • порт
  • префикс
  • схема

Параметры

массив $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
строка

См.

Debugger::exportVar()

addFormatsource public static

addFormat( string $format , array $strings )

Добавляет формат вывода или обновляет формат в Debugger.

Debugger::addFormat('custom', $data);

Где $data — массив строк, использующих замену переменных CakeText::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', array('callback' => array($foo, 'outputError'));

Обратный вызов может ожидать два параметра. Первый — массив всех данных об ошибке. Второй — отформатированные строки, сгенерированные с использованием других строк шаблона. Ключи, такие как info, links, code, context и trace, будут присутствовать в зависимости от других шаблонов в типе формата.

Параметры

строка $format
Используемый формат, включая 'js' для JavaScript-улучшенного HTML, 'html' для простого HTML-вывода или 'txt' для неформатированного текста.
массив $strings
Строки шаблона или обратный вызов, используемый для формата вывода.

Возвращает

The
Установленный результат формата.

checkSecurityKeyssource public static

checkSecurityKeys( )

Проверяет, были ли изменены значения соли и кода шифрования приложения со значения по умолчанию.

dumpsource public static

dump( mixed $var , integer $depth 3 )

Рекурсивно форматирует и выводит содержимое предоставленной переменной.

Параметры

смешанный $var
переменная для вывода
целое число $depth необязательно 3
Глубина вывода. По умолчанию 3.

См.

Debugger::exportVar()

Ссылка

http://book.cakephp.org/2.0/ru/development/debugging.html#Debugger::dump

excerptsource public static

excerpt( string $file , integer $line , integer $context 2 )

Извлекает фрагмент из файла и выделяет указанную строку кода.

Использование:

Debugger::excerpt('/path/to/file', 100, 4);

Вышеприведенное вернет массив из 8 элементов. Четвертый элемент будет предоставленной строкой, и будет обернут в <span class="code-highlight"></span>. Все строки также обрабатываются с помощью highlight_string(), поэтому они имеют базовое выделение синтаксиса PHP.

Параметры

строка $file
Полный путь к PHP-файлу
целое число $line
Номер строки для выделения
целое число $context необязательно 2
Количество строк контекста для извлечения выше и ниже $line

Возвращает

array
Набор выделенных строк

См.

http://php.net/highlight_string

Ссылка

http://book.cakephp.org/2.0/ru/development/debugging.html#Debugger::excerpt

exportVarsource public static

exportVar( string $var , integer $depth 3 )

Преобразует переменную в строку для вывода отладки.

Примечание: Содержимое следующих ключей будет заменено на *****:
- пароль - логин - хост - база данных - порт - префикс - схема

Это делается для защиты учетных данных базы данных, которые могут случайно отображаться в сообщении об ошибке, если CakePHP развернут в режиме разработки.

Параметры

строка $var
Переменная для преобразования
целое число $depth необязательно 3
Глубина вывода. По умолчанию 3.

Возвращает

string
Переменная в отформатированном виде

Ссылка

http://book.cakephp.org/2.0/ru/development/debugging.html#Debugger::exportVar

getInstancesource public static

getInstance( string $class null )

Возвращает ссылку на экземпляр объекта Debugger singleton.

Параметры

строка $class необязательно null
Имя класса Debugger.

Возвращает

object
объект
END_OF_DOCUMENT_MARKER

getTypesource public static

getType( mixed $var )

Получить тип данного переменной. Для объектов будет возвращено имя класса.

Параметры

mixed $var
Переменная, тип которой нужно получить

Возвращаемое значение

string
Тип переменной.

logsource public static

log( mixed $var , integer $level LOG_DEBUG , integer $depth 3 )

Создает запись в файле журнала. Запись журнала будет содержать стек вызовов, откуда она была вызвана, а также экспортирует переменную с помощью exportVar. По умолчанию журнал записывается в журнал отладки.

Параметры

mixed $var
Переменная или содержимое для записи в журнал
integer $level необязательно LOG_DEBUG
Тип журнала. По умолчанию LOG_DEBUG
integer $depth необязательно 3
Глубина вывода. По умолчанию 3.

Ссылка

http://book.cakephp.org/2.0/ru/development/debugging.html#Debugger::log

outputsource public static

output( string $format null , array $strings array() )

Переключает формат вывода, обновляет строки формата. Может использоваться для переключения активного формата вывода:

Устарело

3.0.0 Используйте Debugger::outputAs() и Debugger::addFormat(). Будет удалено в версии 3.0

Параметры

string $format необязательно null
Формат для использования, включая 'js' для HTML с улучшениями JavaScript, 'html' для простого HTML-вывода или 'txt' для неформатированного текста.
array $strings необязательно array()
Строки шаблонов, которые будут использоваться для формата вывода.

Возвращаемое значение

string
строка

outputAssource public static

outputAs( string $format null )

Получение/установка формата вывода для отображения ошибок Debugger.

Параметры

string $format необязательно null
Формат, в котором должны отображаться ошибки. Оставьте null, чтобы получить текущий формат.

Возвращаемое значение

mixed
Возвращает null при установке. Возвращает текущий формат при получении.

Исключения

CakeException
при выборе формата, который не существует.

outputErrorsource public

outputError( string $data )

Принимает обработанный массив данных из ошибки и отображает его в выбранном формате.

Параметры

string $data
Данные для вывода.

showErrorsource public static

showError( integer $code , string $description , string $file null , integer $line null , array $context null )

Переопределяет обработку ошибок по умолчанию PHP.

Устарело

3.0.0 Будет удалено в версии 3.0. Эта функция заменена Debugger::outputError().

Параметры

integer $code
Код ошибки
string $description
Описание ошибки
string $file необязательно null
Файл, в котором произошла ошибка
integer $line необязательно null
Строка, которая вызвала ошибку
array $context необязательно null
Контекст

Возвращаемое значение

boolean|null
True, если ошибка была обработана, в противном случае null.

tracesource public static

trace( array $options array() )

Выводит стек вызовов на основе заданных параметров.

Параметры

  • depth - Количество кадров стека для возврата. По умолчанию 999
  • format - Формат возвращаемых данных. По умолчанию, выбранный формат. Если формат 'array' или 'points', то возвращается массив.
  • args - Показывать аргументы функций? Если true, будут отображаться аргументы каждого вызова метода.
  • start - Кадр стека для начала генерации трассировки. По умолчанию 0

Параметры

array $options необязательно array()
Формат вывода стека вызовов

Возвращаемое значение

mixed
Отформатированный стек вызовов

Ссылка

http://book.cakephp.org/2.0/ru/development/debugging.html#Debugger::trace

trimPathsource public static

trimPath( string $path )

Укорачивает пути к файлам, заменяя путь к приложению на 'APP', а путь к ядру CakePHP на 'CORE'.

Параметры

string $path
Путь для укорачивания

Возвращаемое значение

string
Нормализованный путь

Краткое описание свойств

$_datasource

protected string

Содержит текущие данные вывода, когда outputFormat равен false.

array()

$_outputFormatsource

protected string

Текущий формат вывода.

'js'

$_templatessource

protected string

Шаблоны, используемые при генерации строк отслеживания или ошибок. Могут быть глобальными или индексироваться по значению формата, используемому в $_outputFormat.

array(
    'log' => array(
        'trace' => '{:reference} - {:path}, line {:line}',
        'error' => "{:error} ({:code}): {:description} in [{:file}, line {:line}]"
    ),
    'js' => array(
        'error' => '',
        'info' => '',
        'trace' => '<pre class="stack-trace">{:trace}</pre>',
        'code' => '',
        'context' => '',
        'links' => array(),
        'escapeContext' => true,
    ),
    'html' => array(
        'trace' => '<pre class="cake-error trace"><b>Trace</b> <p>{:trace}</p></pre>',
        'context' => '<pre class="cake-error context"><b>Context</b> <p>{:context}</p></pre>',
        'escapeContext' => true,
    ),
    'txt' => array(
        'error' => "{:error}: {:code} :: {:description} on line {:line} of {:path}\n{:info}",
        'code' => '',
        'info' => ''
    ),
    'base' => array(
        'traceLine' => '{:reference} - {:path}, line {:line}',
        'trace' => "Trace:\n{:trace}\n",
        'context' => "Context:\n{:context}\n",
    )
)

$errorssource

public array

Список ошибок, сгенерированных приложением.

array()

© 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/2.7/class-Debugger.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API