FacturaScripts

Response
in package

FinalYes

Representa la respuesta HTTP que se devolverá al cliente.

Acumula contenido, código de estado, cabeceras y cookies, y los envía al llamar a send() (o a métodos de conveniencia como json(), pdf(), view()...).

Table of Contents

Constants

HTTP_BAD_REQUEST  : mixed = 400
HTTP_CONFLICT  : mixed = 409
HTTP_FORBIDDEN  : mixed = 403
HTTP_INTERNAL_SERVER_ERROR  : mixed = 500
HTTP_METHOD_NOT_ALLOWED  : mixed = 405
HTTP_NOT_FOUND  : mixed = 404
HTTP_OK  : mixed = 200
HTTP_UNAUTHORIZED  : mixed = 401
HTTP_UNPROCESSABLE_ENTITY  : mixed = 422

Properties

$headers  : mixed
Cabeceras HTTP de la respuesta.
$content  : mixed
Cuerpo de la respuesta que se enviará al cliente.
$cookies  : mixed
Cookies pendientes de enviar, indexadas por nombre.
$http_code  : mixed
Código de estado HTTP.
$send_disabled  : mixed
Si es true, send()/sendHeaders() no emiten nada (útil en tests o CLI).
$sent  : mixed
Indica si la respuesta ya se ha enviado, para evitar enviarla dos veces.

Methods

__construct()  : mixed
cookie()  : self
Programa una cookie para ser enviada con la respuesta.
disableSend()  : self
Activa o desactiva el envío real de la respuesta (cabeceras y cuerpo).
download()  : void
Fuerza la descarga del archivo indicado (Content-Disposition: attachment).
file()  : void
Envía un archivo del disco como respuesta.
getContent()  : string
Devuelve el cuerpo acumulado en la respuesta.
getHttpCode()  : int
Devuelve el código de estado HTTP actual.
header()  : self
Atajo para añadir una cabecera HTTP individual.
json()  : void
Serializa $data como JSON, fija el Content-Type y envía la respuesta.
pdf()  : void
Envía un PDF ya generado (binario en $content) inline en el navegador.
redirect()  : self
Programa una redirección a $url.
send()  : void
Envía cabeceras y cuerpo al cliente.
setContent()  : self
Establece el cuerpo de la respuesta (sustituye el actual).
setHttpCode()  : self
Establece el código de estado HTTP.
setStatusCode()  : self
view()  : void
Renderiza una plantilla Twig con $data y la envía como HTML.
withoutCookie()  : self
Indica al cliente que elimine la cookie indicada (expiración en el pasado).
sanitizeFileName()  : string
Normaliza un nombre de archivo eliminando todo lo que no sea alfanumérico, punto, guion o guion bajo.
sendHeaders()  : void
Emite el código de estado, las cabeceras y las cookies acumuladas.

Constants

HTTP_BAD_REQUEST

public mixed HTTP_BAD_REQUEST = 400

HTTP_CONFLICT

public mixed HTTP_CONFLICT = 409

HTTP_FORBIDDEN

public mixed HTTP_FORBIDDEN = 403

HTTP_INTERNAL_SERVER_ERROR

public mixed HTTP_INTERNAL_SERVER_ERROR = 500

HTTP_METHOD_NOT_ALLOWED

public mixed HTTP_METHOD_NOT_ALLOWED = 405

HTTP_NOT_FOUND

public mixed HTTP_NOT_FOUND = 404

HTTP_UNAUTHORIZED

public mixed HTTP_UNAUTHORIZED = 401

HTTP_UNPROCESSABLE_ENTITY

public mixed HTTP_UNPROCESSABLE_ENTITY = 422

Properties

$headers

Cabeceras HTTP de la respuesta.

public mixed $headers

@var ResponseHeaders

$content

Cuerpo de la respuesta que se enviará al cliente.

private mixed $content

@var string

$cookies

Cookies pendientes de enviar, indexadas por nombre.

private mixed $cookies

@var array

$http_code

Código de estado HTTP.

private mixed $http_code

@var int

$send_disabled

Si es true, send()/sendHeaders() no emiten nada (útil en tests o CLI).

private mixed $send_disabled = false

@var bool

$sent

Indica si la respuesta ya se ha enviado, para evitar enviarla dos veces.

private mixed $sent = false

@var bool

Methods

__construct()

public __construct([int $http_code = 200 ]) : mixed
Parameters
$http_code : int = 200

Código de estado HTTP inicial (200 por defecto).

Programa una cookie para ser enviada con la respuesta.

public cookie(string $name, string|null $value[, int $expire = 0 ][, bool $httpOnly = true ][, bool|null $secure = null ][, string $sameSite = 'Lax' ]) : self
Parameters
$name : string
$value : string|null
$expire : int = 0

Timestamp de expiración. Si es 0 se usa el TTL configurado en cookies_expire.

$httpOnly : bool = true
$secure : bool|null = null

Si es null, se autodetecta a partir de $_SERVER['HTTPS'].

$sameSite : string = 'Lax'

Política SameSite (Lax, Strict o None).

Return values
self

disableSend()

Activa o desactiva el envío real de la respuesta (cabeceras y cuerpo).

public disableSend([bool $disable = true ]) : self
Parameters
$disable : bool = true
Return values
self

download()

Fuerza la descarga del archivo indicado (Content-Disposition: attachment).

public download(string $file_path[, string $file_name = '' ]) : void
Parameters
$file_path : string
$file_name : string = ''

file()

Envía un archivo del disco como respuesta.

public file(string $file_path[, string $file_name = '' ][, string $disposition = 'inline' ]) : void

Verifica existencia, lectura y que la ruta no apunte a un directorio; en caso contrario responde con 404 o 403 sin contenido.

Parameters
$file_path : string
$file_name : string = ''
$disposition : string = 'inline'

"inline" (mostrar) o "attachment" (descargar).

getContent()

Devuelve el cuerpo acumulado en la respuesta.

public getContent() : string
Return values
string

getHttpCode()

Devuelve el código de estado HTTP actual.

public getHttpCode() : int
Return values
int

header()

Atajo para añadir una cabecera HTTP individual.

public header(string $name, string $value) : self
Parameters
$name : string
$value : string
Return values
self

json()

Serializa $data como JSON, fija el Content-Type y envía la respuesta.

public json(array<string|int, mixed> $data) : void
Parameters
$data : array<string|int, mixed>

pdf()

Envía un PDF ya generado (binario en $content) inline en el navegador.

public pdf(string $content[, string $file_name = '' ]) : void

Si $file_name está vacío se genera uno con prefijo "doc_".

Parameters
$content : string
$file_name : string = ''

redirect()

Programa una redirección a $url.

public redirect(string $url[, int $delay = 0 ]) : self

Si $delay es 0 usa la cabecera Location; si es positivo usa Refresh con esos segundos de espera (útil para mostrar antes un mensaje al usuario).

Parameters
$url : string
$delay : int = 0
Return values
self

send()

Envía cabeceras y cuerpo al cliente.

public send() : void

Es idempotente: una respuesta solo se envía una vez, y no hace nada si send_disabled está activo.

setContent()

Establece el cuerpo de la respuesta (sustituye el actual).

public setContent(string $content) : self
Parameters
$content : string
Return values
self

setHttpCode()

Establece el código de estado HTTP.

public setHttpCode(int $http_code) : self
Parameters
$http_code : int
Return values
self

setStatusCode()

public setStatusCode(int $http_code) : self

replaced by setHttpCode

Parameters
$http_code : int
Return values
self

view()

Renderiza una plantilla Twig con $data y la envía como HTML.

public view(string $view[, array<string|int, mixed> $data = [] ]) : void
Parameters
$view : string
$data : array<string|int, mixed> = []

withoutCookie()

Indica al cliente que elimine la cookie indicada (expiración en el pasado).

public withoutCookie(string $name) : self
Parameters
$name : string
Return values
self

sanitizeFileName()

Normaliza un nombre de archivo eliminando todo lo que no sea alfanumérico, punto, guion o guion bajo.

private sanitizeFileName(string $fileName[, string $prefix = 'file_' ][, string $suffix = '' ]) : string

Si el resultado queda vacío genera uno único con $prefix + uniqid() + $suffix.

Parameters
$fileName : string
$prefix : string = 'file_'
$suffix : string = ''
Return values
string

sendHeaders()

Emite el código de estado, las cabeceras y las cookies acumuladas.

private sendHeaders() : void

Las cookies se envían por la ruta configurada en FS_ROUTE para que sean coherentes con la base de la aplicación.

On this page

Search results