Html
extends OutputResponse
in package
Uses
ConvertToHtmlTrait, DetectTypeTrait
Class Html
Outputs the results as HTML.
Table of Contents
- $id : mixed
- Processor ID.
- $status : mixed
- The HTTP output status.
- $data : DataContainer
- The output data.
- $details : array<string|int, mixed>
- {@inheritDoc}
- $header : string
- Content-type header value.
- $logger : MonologWrapper
- Logger object.
- $meta : array<string|int, mixed>
- Metadata for the processor.
- $request : Request
- All the request details.
- __construct() : mixed
- details() : array<string|int, mixed>
- Return details for processor.
- detectType() : string
- Detect the type of data that is input .
- fromArrayToHtml() : string
- Convert array to HTML string.
- fromBooleanToHtml() : string
- Convert boolean to HTML string.
- fromFileToHtml() : string
- Convert file to HTML string.
- fromFloatToHtml() : string
- Convert float to HTML string.
- fromHtmlToHtml() : string
- Convert an HTML string to HTML string.
- fromImageToHtml() : string
- Convert an image string to HTML string.
- fromIntegerToHtml() : string
- Convert integer to HTML string.
- fromJsonToHtml() : string
- Convert JSON string to HTML string.
- fromTextToHtml() : string
- Convert text to HTML string.
- fromUndefinedToHtml() : string
- Convert undefined to HTML.
- fromXmlToHtml() : string
- Convert XML string to HTML string.
- isArray() : bool
- Validate a variable is an array.
- isBool() : bool
- Validate a variable is boolean.
- isEmpty() : bool
- Validate a variable is empty.
- isFloat() : bool
- Validate a variable is float.
- isHtml() : bool
- Validate a variable is HTML.
- isInt() : bool
- Validate a variable is integer.
- isJson() : bool
- Validate a variable is JSON.
- isXml() : bool
- Validate a variable is XML.
- process() : mixed
- Main processor function.
- setHeader() : void
- Set the response headers.
- setResponseCode() : void
- Set the HTML response code.
- val() : mixed|DataContainer
- Process a variable into a final result for the processor.
- castData() : void
- Cast the data to HTML.
- fromArrayToDataList() : string
- Convert array to HTML Data List string.
- isDataContainer() : bool
- Validate if a set of data is wrapped in a DataContainer object.
- wrapDataHtmlFormat() : string
- Wrap Data in HTML string wrapper.
- validateAllowedTypes() : void
- Validate an input for allowed variable types
- validateAllowedValues() : void
- Validate an input for allowed values.
Properties
$id
Processor ID.
public
mixed
$id
= ''
Processor ID.
$status
The HTTP output status.
public
mixed
$status
The output status.
$data
The output data.
protected
DataContainer
$data
The output data.
$details
{@inheritDoc}
protected
array<string|int, mixed>
$details
= [
'name' => 'Html',
'machineName' => 'html',
// phpcs:ignore
'description' => 'Output the results of the resource in HTML format in the response. This does not need to be added to the resource - it will be automatically detected by the Accept header.',
'menu' => 'Output',
'input' => [],
]
Details of the processor.
$header
Content-type header value.
protected
string
$header
= 'Content-Type:text/html'
The string to contain the content type header value.
$logger
Logger object.
protected
MonologWrapper
$logger
$meta
Metadata for the processor.
protected
array<string|int, mixed>
$meta
$request
All the request details.
protected
Request
$request
Request.
Methods
__construct()
public
__construct(array<string|int, mixed> &$meta, Request &$request[, MonologWrapper|null $logger = null ]) : mixed
Parameters
- $meta : array<string|int, mixed>
-
Metadata for the processor.
- $request : Request
-
The full request object.
- $logger : MonologWrapper|null = null
-
The logger.
Return values
mixed —details()
Return details for processor.
public
details() : array<string|int, mixed>
Return values
array<string|int, mixed> —detectType()
Detect the type of data that is input .
public
detectType(mixed $data) : string
Parameters
- $data : mixed
-
Data to test.
Return values
string —The data type.
fromArrayToHtml()
Convert array to HTML string.
public
fromArrayToHtml(array<string|int, mixed>|null $array) : string
If the array does not have a html element at the root, then the array will be converted to a data-list and will be appended to the body of the new HTML doc.
Parameters
- $array : array<string|int, mixed>|null
Return values
string —fromBooleanToHtml()
Convert boolean to HTML string.
public
fromBooleanToHtml(bool|null $boolean) : string
The boolean will be within a div in the body of the new HTML doc.
Parameters
- $boolean : bool|null
Return values
string —fromFileToHtml()
Convert file to HTML string.
public
fromFileToHtml( $file) : string
Parameters
Return values
string —fromFloatToHtml()
Convert float to HTML string.
public
fromFloatToHtml(float|null $float) : string
The float will be within a div in the body of the new HTML doc.
Parameters
- $float : float|null
Return values
string —fromHtmlToHtml()
Convert an HTML string to HTML string.
public
fromHtmlToHtml(string $html) : string
Parameters
- $html : string
Return values
string —fromImageToHtml()
Convert an image string to HTML string.
public
fromImageToHtml( $image) : string
Parameters
Return values
string —fromIntegerToHtml()
Convert integer to HTML string.
public
fromIntegerToHtml(int|float|null $integer) : string
The integer will be within a div in the body of the new HTML doc.
Parameters
- $integer : int|float|null
Return values
string —fromJsonToHtml()
Convert JSON string to HTML string.
public
fromJsonToHtml(string|null $json) : string
Parameters
- $json : string|null
Return values
string —fromTextToHtml()
Convert text to HTML string.
public
fromTextToHtml(string $text) : string
The text will be within a div in the body of the new HTML doc.
Parameters
- $text : string
Return values
string —fromUndefinedToHtml()
Convert undefined to HTML.
public
fromUndefinedToHtml( $data) : string
Creates an empty HTML doc.
Parameters
Return values
string —fromXmlToHtml()
Convert XML string to HTML string.
public
fromXmlToHtml(string $xml) : string
Parameters
- $xml : string
Return values
string —isArray()
Validate a variable is an array.
public
isArray(mixed $var) : bool
Parameters
- $var : mixed
-
Variable to test.
Return values
bool —isBool()
Validate a variable is boolean.
public
isBool(mixed $var) : bool
Parameters
- $var : mixed
-
Variable to test.
Return values
bool —isEmpty()
Validate a variable is empty.
public
isEmpty(mixed $var) : bool
Parameters
- $var : mixed
-
Variable to test.
Return values
bool —isFloat()
Validate a variable is float.
public
isFloat(mixed $var) : bool
Parameters
- $var : mixed
-
Variable to test.
Return values
bool —isHtml()
Validate a variable is HTML.
public
isHtml(mixed $var) : bool
Parameters
- $var : mixed
-
Variable to test.
Return values
bool —isInt()
Validate a variable is integer.
public
isInt(mixed $var) : bool
Parameters
- $var : mixed
-
Variable to test.
Return values
bool —isJson()
Validate a variable is JSON.
public
isJson(mixed $var) : bool
Parameters
- $var : mixed
-
Variable to test.
Return values
bool —isXml()
Validate a variable is XML.
public
isXml(mixed $var) : bool
Parameters
- $var : mixed
-
Variable to test.
Return values
bool —process()
Main processor function.
public
process() : mixed
This is where the magic happens, and should be overridden by all derived classes.
Fetches and process the processor described in the metadata. It is also the 1st stop to recursive processing of processors, so the place validate user credentials.
Tags
Return values
mixed —setHeader()
Set the response headers.
public
setHeader() : void
Return values
void —setResponseCode()
Set the HTML response code.
public
setResponseCode() : void
Return values
void —val()
Process a variable into a final result for the processor.
public
val(string $key[, bool|null $rawData = false ]) : mixed|DataContainer
This method can be used to process a value in its meta to return a final result that it can use. If the object is a processor, then it will process that down to a final return value, or if the obj is a simple value, then it will return that. Anything else will return an error object.
Setting $realValue to true will force the value to be the actual value, rather than a potential dataContainer.
Parameters
- $key : string
-
The key for the input variable in the meta.
- $rawData : bool|null = false
-
Return the raw data or a DataContainer.
Tags
Return values
mixed|DataContainer —castData()
Cast the data to HTML.
protected
castData() : void
Tags
Return values
void —fromArrayToDataList()
Convert array to HTML Data List string.
protected
fromArrayToDataList(array<string|int, mixed> $array) : string
Parameters
- $array : array<string|int, mixed>
Return values
string —isDataContainer()
Validate if a set of data is wrapped in a DataContainer object.
protected
isDataContainer(mixed $data) : bool
Parameters
- $data : mixed
-
DataContainer or raw data.
Return values
bool —wrapDataHtmlFormat()
Wrap Data in HTML string wrapper.
protected
wrapDataHtmlFormat(string $body[, string $pageTitle = 'HTML generated by ApiOpenStudio' ]) : string
Parameters
- $body : string
-
Body content.
- $pageTitle : string = 'HTML generated by ApiOpenStudio'
-
HTML doc title.
Return values
string —validateAllowedTypes()
Validate an input for allowed variable types
private
validateAllowedTypes(string $type, array<string|int, mixed> $limitTypes, int $min, string $key) : void
Parameters
- $type : string
-
Input value type.
- $limitTypes : array<string|int, mixed>
-
List of limit on variable types.
- $min : int
-
Minimum number of values.
- $key : string
-
The key of the input being validated.
Tags
Return values
void —validateAllowedValues()
Validate an input for allowed values.
private
validateAllowedValues(mixed $val, array<string|int, mixed> $limitValues, int $min, string $key) : void
Parameters
- $val : mixed
-
Input value.
- $limitValues : array<string|int, mixed>
-
List of allowed values.
- $min : int
-
Minimum number of values.
- $key : string
-
The key of the input being validated.