\Monolog\FormatterHtmlFormatter

Formats incoming records into an HTML table

This is especially useful for html email logging

Summary

Methods
Properties
Constants
__construct()
format()
formatBatch()
detectAndCleanUtf8()
No public properties found
SIMPLE_DATE
normalize()
normalizeException()
toJson()
addRow()
addTitle()
convertToString()
$dateFormat
$logLevels
N/A
jsonEncode()
handleJsonError()
throwEncodeError()
No private properties found
N/A

Constants

SIMPLE_DATE

SIMPLE_DATE = "Y-m-d H:i:s"

Properties

$dateFormat

$dateFormat : 

Type

$logLevels

$logLevels : 

Translates Monolog log levels to html color priorities.

Type

Methods

__construct()

__construct(string  $dateFormat = null) 

Parameters

string $dateFormat

The format of the timestamp: one supported by DateTime::format

format()

format(array  $record) : mixed

Formats a log record.

Parameters

array $record

A record to format

Returns

mixed —

The formatted record

formatBatch()

formatBatch(array  $records) : mixed

Formats a set of log records.

Parameters

array $records

A set of records to format

Returns

mixed —

The formatted set of records

detectAndCleanUtf8()

detectAndCleanUtf8(  $data) 

Detect invalid UTF-8 string characters and convert to valid UTF-8.

Valid UTF-8 input will be left unmodified, but strings containing invalid UTF-8 codepoints will be reencoded as UTF-8 with an assumed original encoding of ISO-8859-15. This conversion may result in incorrect output if the actual encoding was not ISO-8859-15, but it will be clean UTF-8 output and will not rely on expensive and fragile detection algorithms.

Function converts the input in place in the passed variable so that it can be used as a callback for array_walk_recursive.

Parameters

$data

normalize()

normalize(  $data) 

Parameters

$data

normalizeException()

normalizeException(  $e) 

Parameters

$e

toJson()

toJson(mixed  $data, boolean  $ignoreErrors = false) : string

Return the JSON representation of a value

Parameters

mixed $data
boolean $ignoreErrors

Throws

\RuntimeException

if encoding fails and errors are not ignored

Returns

string

addRow()

addRow(string  $th, string  $td = ' ', boolean  $escapeTd = true) : string

Creates an HTML table row

Parameters

string $th

Row header content

string $td

Row standard cell content

boolean $escapeTd

false if td content must not be html escaped

Returns

string

addTitle()

addTitle(string  $title, integer  $level) : string

Create a HTML h1 tag

Parameters

string $title

Text to be in the h1

integer $level

Error level

Returns

string

convertToString()

convertToString(  $data) 

Parameters

$data

jsonEncode()

jsonEncode(mixed  $data) : string

Parameters

mixed $data

Returns

string —

JSON encoded data or null on failure

handleJsonError()

handleJsonError(integer  $code, mixed  $data) : string

Handle a json_encode failure.

If the failure is due to invalid string encoding, try to clean the input and encode again. If the second encoding attempt fails, the inital error is not encoding related or the input can't be cleaned then raise a descriptive exception.

Parameters

integer $code

return code of json_last_error function

mixed $data

data that was meant to be encoded

Throws

\RuntimeException

if failure can't be corrected

Returns

string —

JSON encoded data after error correction

throwEncodeError()

throwEncodeError(integer  $code, mixed  $data) 

Throws an exception according to a given code with a customized message

Parameters

integer $code

return code of json_last_error function

mixed $data

data that was meant to be encoded

Throws

\RuntimeException