Funciones y constantes globales
Higgs proporciona algunas funciones y variables que están definidas globalmente y están disponibles en cualquier momento. Estos no requieren cargar bibliotecas o ayudantes adicionales.
Funciones globales
Accesorios de servicio
- cache([$key])
- Parámetros:
$key (
string
) – el nombre de la caché del elemento que se recuperará de la caché (opcional)
- Devuelve:
ya sea el objeto de la caché o el elemento recuperado de la caché
- Tipo del valor devuelto:
mixto
Si no se proporciona ninguna clave $, devolverá la instancia del motor de caché. Si una clave $ se proporciona, devolverá el valor de $key tal como está almacenado en el caché actualmente, o nulo si no se encuentra ningún valor.
Ejemplos:
<?php $foo = cache('foo'); $cache = cache();
- config(string $name[, bool $getShared = true])
- Parámetros:
$nombre (
string
) – el nombre de clase de configuración.$getShared (
bool
) – si se debe devolver una instancia compartida.
- Devuelve:
Las instancias de configuración.
- Tipo del valor devuelto:
objeto|nulo
Una forma más sencilla de obtener instancias de configuración de las fábricas.
Ver Configuración y Fábricas para más detalles.
config()
usaFactories::config()
internamente. Consulte Cargando clases para obtener detalles sobre el primer parámetro$name
.
- cookie(string $name[, string $value = ''[, array $options = []]])
- Parámetros:
$nombre (
string
) – nombre de la cookie$valor (
string
) – valor de la cookie$options (
array
) – Opciones de cookies
- Tipo del valor devuelto:
Cookie
- Devuelve:
instancia
Cookie
- Lanza:
CookieException
Una forma más sencilla de crear una nueva instancia de Cookie.
- cookies([array $cookies = [][, bool $getGlobal = true]])
- Parámetros:
$cookies (
array
) – SigetGlobal
esfalse
, esto se pasa al constructor deCookieStore
.$getGlobal (
bool
) – Si esfalse
, crea una nueva instancia deCookieStore
.
- Tipo del valor devuelto:
Tienda de cookies
- Devuelve:
Instancia de
CookieStore
guardada en laResponse
actual, o una nueva instancia deCookieStore
.
Recupera la instancia global
CookieStore
mantenida porResponse
.
- env($key[, $default = null])
- Parámetros:
$key (
string
) – El nombre de la variable de entorno a recuperar$default (
mixed
) – el valor predeterminado que se devolverá si no se encuentra ningún valor.
- Devuelve:
la variable de entorno, el valor predeterminado o nulo.
- Tipo del valor devuelto:
mixto
Se utiliza para recuperar valores que se han establecido previamente en el entorno, o devolver un valor predeterminado si no se encuentra. Formateará valores booleanos a valores booleanos reales en lugar de representaciones de cadenas.
Especialmente útil cuando se usa junto con archivos .env para configurar valores que son específicos del entorno mismo, como la base de datos configuraciones, claves API, etc.
- esc($data[, $context = 'html'[, $encoding]])
- Parámetros:
$data (
string|array
) – La información que se va a escapar.$context (
string
) – el contexto de escape. El valor predeterminado es “html”.$codificación (
cadena
) – la codificación de caracteres de la cadena.
- Devuelve:
Los datos escapados.
- Tipo del valor devuelto:
mixto
Escape de datos para incluirlos en páginas web, para ayudar a prevenir ataques XSS. Esto utiliza la biblioteca Laminas Escaper para manejar el filtrado real de los datos.
Si $data es una cadena, simplemente se escapa y la devuelve. Si $data es una matriz, entonces la recorre, escapando de cada “valor” de los pares clave/valor.
Valores de contexto válidos:
html
,js
,css
,url
,attr
,raw
- helper($filename)
- Parámetros:
$filename (
string|array
) – El nombre del archivo auxiliar a cargar, o una matriz de nombres.
Carga un archivo auxiliar.
Para obtener detalles completos, consulte la página Funciones auxiliares.
- lang($line[, $args[, $locale]])
- Parámetros:
$line (
string
) – La línea de texto a recuperar$args (
array
) – una matriz de datos para sustituir los marcadores de posición.$locale (
string
) – especifique una configuración regional diferente que se utilizará en lugar de la predeterminada.
Recupera un archivo específico de la configuración regional basado en una cadena de alias.
Para obtener más información, consulte Localización página.
- model($name[, $getShared = true[, &$conn = null]])
- Parámetros:
$nombre (
string
) – el nombre de clase del modelo.$getShared (
boolean
) – si se debe devolver una instancia compartida.$conn (
ConnectionInterface|null
) – La conexión de la base de datos.
- Devuelve:
Las instancias del modelo
- Tipo del valor devuelto:
objeto
Una forma más sencilla de obtener instancias de modelo.
El
model()
usaFactories::models()
internamente. Consulte Cargando clases para obtener detalles sobre el primer parámetro$name
.Véase también Uso del modelo de Higgs .
- old($key[, $default = null[, $escape = 'html']])
- Parámetros:
$key (
string
) – El nombre de los datos del formulario antiguo que se verificarán.$default (
string|null
) – el valor predeterminado que se devolverá si $key no existe.$escape (
false|string
) – un contexto escape o false para deshabilitarlo.
- Devuelve:
el valor de la clave definida o el valor predeterminado.
- Tipo del valor devuelto:
matriz|cadena|nulo
Proporciona una manera sencilla de acceder a «datos de entrada antiguos» al enviar un formulario.
Ejemplo:
<?php // in controller, checking form submittal if (! $model->save($user)) { // 'withInput()' is what specifies "old data" should be saved. return redirect()->back()->withInput(); } ?> <!-- In your view file: --> <input type="email" name="email" value="<?= old('email') ?>"> <!-- Or with arrays: --> <input type="email" name="user[email]" value="<?= old('user.email') ?>">
Nota
If you are using the set_value()
, set_select()
,
Funciones set_checkbox()
y set_radio()
en
ayudante de formulario , esta característica está incorporada. Solo
Es necesario utilizar esta función cuando no se utiliza el asistente de formulario.
- session([$key])
- Parámetros:
$key (
string
) – El nombre del elemento de sesión que se va a comprobar.
- Devuelve:
una instancia del objeto Sesión si no hay una clave $, el valor encontrado en la sesión para la clave $ o nulo.
- Tipo del valor devuelto:
mixto
Proporciona una manera conveniente de acceder a la clase de sesión y recuperar una valor almacenado. Para obtener más información, consulte Sesiones página.
- timer([$name])
- Parámetros:
$nombre (
string
) – el nombre del punto de referencia.
- Devuelve:
La instancia del temporizador
- Tipo del valor devuelto:
HiggsDebugTimer
Un método conveniente que proporciona acceso rápido a la clase Timer. Puedes pasar el nombre de un punto de referencia como único parámetro. Esto comenzará a cronometrar desde este punto o se detendrá. temporización si ya se está ejecutando un temporizador con este nombre.
Ejemplo:
<?php // Get an instance $timer = timer(); // Set timer start and stop points timer('controller_loading'); // Will start the timer // ... timer('controller_loading'); // Will stop the running timer
- view($name[, $data[, $options]])
- Parámetros:
$name (
string
) – El nombre del archivo a cargar$data (
array
) – una matriz de pares clave/valor para estar disponibles en la vista.$options (
array
) – un conjunto de opciones que se pasarán a la clase de renderizado.
- Devuelve:
El resultado de la vista.
- Tipo del valor devuelto:
cadena
Toma la clase actual compatible con RendererInterface y le dice que muestre la vista especificada. Simplemente proporciona un método conveniente que se puede utilizar en controladores, bibliotecas y cierres enrutados.
Actualmente, estas opciones están disponibles para su uso dentro de la matriz
$options
:saveData
especifica que los datos persistirán entre múltiples llamadas aview()
dentro de la misma solicitud. Si no desea que los datos se conserven, especifique false.cache
especifica el número de segundos para almacenar en caché la vista. Consulte Vistas de almacenamiento en caché para obtener más detalles.debug
se puede establecer en false para deshabilitar la adición de código de depuración para Barra de herramientas de depuración .
La matriz
$option
se proporciona principalmente para facilitar las integraciones de terceros con bibliotecas como Twig.Ejemplo:
<?php $data = ['user' => $user]; echo view('user_profile', $data);
Para obtener más detalles, consulte Vistas y Ver renderizador página.
- view_cell($library[, $params = null[, $ttl = 0[, $cacheName = null]]])
- Parámetros:
$biblioteca (
string
) –$params (
nulo
) –$ttl (
entero
) –$nombrecache (
string|nulo
) –
- Devuelve:
las celdas de vista se utilizan dentro de las vistas para insertar fragmentos de HTML administrados por otras clases.
- Tipo del valor devuelto:
cadena
Para obtener más detalles, consulte Ver celdas página.
Funciones varias
- app_timezone()
- Devuelve:
La zona horaria en la que se configuró la aplicación para mostrar fechas.
- Tipo del valor devuelto:
cadena
Devuelve la zona horaria en la que se configuró la aplicación para mostrar fechas.
- csp_script_nonce()
- Devuelve:
el atributo nonce de CSP para la etiqueta de secuencia de comandos.
- Tipo del valor devuelto:
cadena
Devuelve el atributo nonce para una etiqueta de script. Por ejemplo:
nonce="Eskdikejidojdk978Ad8jf"
. Ver Política de seguridad de contenido .
- csp_style_nonce()
- Devuelve:
el atributo nonce de CSP para la etiqueta de estilo.
- Tipo del valor devuelto:
cadena
Devuelve el atributo nonce para una etiqueta de estilo. Por ejemplo:
nonce="Eskdikejidojdk978Ad8jf"
. Ver Política de seguridad de contenido .
- csrf_token()
- Devuelve:
el nombre del token CSRF actual.
- Tipo del valor devuelto:
cadena
Devuelve el nombre del token CSRF actual.
- csrf_header()
- Devuelve:
el nombre del encabezado del token CSRF actual.
- Tipo del valor devuelto:
cadena
El nombre del encabezado del token CSRF actual.
- csrf_hash()
- Devuelve:
El valor actual del hash CSRF.
- Tipo del valor devuelto:
cadena
Devuelve el valor hash CSRF actual.
- csrf_field()
- Devuelve:
una cadena con el HTML para entrada oculta con toda la información CSRF requerida.
- Tipo del valor devuelto:
cadena
Devuelve una entrada oculta con la información CSRF ya insertada:
<input type="hidden" name="{csrf_token}" value="{csrf_hash}">
- csrf_meta()
- Devuelve:
una cadena con el HTML para la metaetiqueta con toda la información CSRF requerida.
- Tipo del valor devuelto:
cadena
Devuelve una metaetiqueta con la información CSRF ya insertada:
<meta name="{csrf_header}" content="{csrf_hash}">
- force_https($duration = 31536000[, $request = null[, $response = null]])
- Parámetros:
$duration (
int
) – la cantidad de segundos que los navegadores deben convertir los enlaces a este recurso a HTTPS.$request (
RequestInterface
) – una instancia del objeto Request actual.$respuesta (
ResponseInterface
) – una instancia del objeto Respuesta actual.
Comprueba si actualmente se accede a la página a través de HTTPS. Si es así, entonces no pasa nada. Si no es así, el usuario es redirigido nuevamente al URI actual. sino a través de HTTPS. Establecerá el encabezado HTTP Strict Transport Security (HTST), que indica navegadores modernos para modificar automáticamente cualquier solicitud HTTP a solicitud HTTPS durante la
$duración
.Nota
This function is also used when you set
Config\App:$forceGlobalSecureRequests
en verdadero.
- function_usable($function_name)
- Parámetros:
$function_name (
string
) – Función a verificar
- Devuelve:
verdadero si la función existe y es seguro llamarla, falso en caso contrario.
- Tipo del valor devuelto:
booleano
- is_cli()
- Devuelve:
verdadero si el script se ejecuta desde la línea de comando o falso en caso contrario.
- Tipo del valor devuelto:
booleano
- is_really_writable($file)
- Parámetros:
$file (
string
) – El nombre del archivo que se está verificando.
- Devuelve:
verdadero si puede escribir en el archivo, falso en caso contrario.
- Tipo del valor devuelto:
booleano
- is_windows([$mock = null])
- Parámetros:
$mock (
bool|null
) – si se proporciona y es booleano, se utilizará como valor de retorno.
- Tipo del valor devuelto:
booleano
Detecta si la plataforma se está ejecutando en Windows.
Nota
The boolean value provided to $mock will persist in subsequent calls. To reset this valor simulado, el usuario debe pasar un «nulo» explícito a la llamada de función. Esta voluntad actualice la función para utilizar la detección automática.
<?php is_windows(true); // some code ... if (is_windows()) { // do something .. } is_windows(null); // reset
- log_message($level, $message[, $context])
- Parámetros:
$nivel (
string
) – el nivel de gravedad$message (
string
) – El mensaje que se va a registrar.$context (
array
) – una matriz asociativa de etiquetas y sus valores que deben reemplazarse en $message
- Devuelve:
verdadero si se registró correctamente o falso si hubo un problema al registrarlo
- Tipo del valor devuelto:
booleano
Registra un mensaje utilizando los controladores de registro definidos en app/Config/Logger.php.
El nivel puede ser uno de los siguientes valores: emergencia, alerta, crítico, error, advertencia, aviso, información o depuración.
El contexto se puede utilizar para sustituir valores en la cadena del mensaje. Para obtener detalles completos, consulte la Información de registro página.
- redirect(string $route)
- Parámetros:
$ruta (
cadena
) – El nombre de la ruta o Controlador::método al que redirigir al usuario.
- Tipo del valor devuelto:
Respuesta de redireccionamiento
Devuelve una instancia de RedirectResponse que le permite crear redirecciones fácilmente. Consulte Redirect para obtener más detalles.
- remove_invisible_characters($str[, $urlEncoded = true])
- Parámetros:
$cadena (
string
) – cadena de entrada$urlEncoded (
bool
) – si se deben eliminar también los caracteres codificados en URL
- Devuelve:
cadena desinfectada
- Tipo del valor devuelto:
cadena
Esta función evita la inserción de caracteres nulos entre ASCII caracteres, como Java\0script.
Ejemplo:
<?php remove_invisible_characters('Java\\0script'); // Returns: 'Javascript'
- request()
Nuevo en la versión 7.0.0.
- Devuelve:
el objeto Solicitud compartido.
- Tipo del valor devuelto:
Solicitud entrante|Solicitud CLI
Esta función es un contenedor para
Services::request()
.
- response()
Nuevo en la versión 7.0.0.
- Devuelve:
el objeto Respuesta compartido.
- Tipo del valor devuelto:
Respuesta
Esta función es un contenedor para
Services::response()
.
- route_to($method[, ...$params])
- Parámetros:
$método (
string
) – Nombre de ruta o Controlador::método...$params (
int|string
) – Uno o más parámetros que se pasarán a la ruta. El último parámetro le permite configurar la configuración regional.
- Devuelve:
una ruta de ruta (ruta URI relativa a baseURL)
- Tipo del valor devuelto:
cadena
Nota
This function requires the controller/method to have a route defined in app/Config/Routes.php.
Importante
route_to()
returns a route path, not a full URI path for your site. Si su baseURL contiene subcarpetas, el valor de retorno no es el mismo como el URI para vincular. En ese caso, simplemente useurl_to()
en su lugar. Véase también Estructura de URL.Genera una ruta para usted basada en una combinación de controlador::método. Tomará en vigor los parámetros, si se proporcionan.
<?php // The route is defined as: $routes->get('users/(:num)/gallery/(:num)', 'Galleries::showUserGallery/$1/$2'); ?> <?php // Generate the route with user ID 15, gallery 12: route_to('Galleries::showUserGallery', 15, 12); // Result: '/users/15/gallery/12'
Genera una ruta para usted basada en el nombre de una ruta.
<?php // The route is defined as: $routes->get('users/(:num)/gallery/(:num)', 'Galleries::showUserGallery/$1/$2', ['as' => 'user_gallery']); ?> <?php // Generate the route with user ID 15, gallery 12: route_to('user_gallery', 15, 12); // Result: '/users/15/gallery/12'
Desde v7.3.0, cuando usa
{locale}
en su ruta, puede especificar opcionalmente el valor local como último parámetro.<?php // The route is defined as: $routes->add( '{locale}/users/(:num)/gallery/(:num)', 'Galleries::showUserGallery/$1/$2', ['as' => 'user_gallery'] ); ?> <?php // Generate the route with user ID 15, gallery 12 and locale en: route_to('user_gallery', 15, 12, 'en'); // Result: '/en/users/15/gallery/12'
- service($name[, ...$params])
- Parámetros:
$name (
string
) – El nombre del servicio a cargar$params (
mixed
) – Uno o más parámetros para pasar al método de servicio.
- Devuelve:
una instancia de la clase de servicio especificada.
- Tipo del valor devuelto:
mixto
Proporciona fácil acceso a cualquiera de los Servicios definidos en el sistema. Esto siempre devolverá una instancia compartida de la clase, por lo que no importa cuántas veces se llame durante una sola solicitud, solo se creará una instancia de clase.
Ejemplo:
<?php $logger = service('logger'); $renderer = service('renderer', APPPATH . 'views/');
- single_service($name[, ...$params])
- Parámetros:
$name (
string
) – El nombre del servicio a cargar$params (
mixed
) – Uno o más parámetros para pasar al método de servicio.
- Devuelve:
una instancia de la clase de servicio especificada.
- Tipo del valor devuelto:
mixto
Idéntica a la función service() descrita anteriormente, excepto que todas las llamadas a esta La función devolverá una nueva instancia de la clase, donde servicio devuelve lo mismo instancia cada vez.
- slash_item($item)
- Parámetros:
$item (
string
) – nombre del elemento de configuración
- Devuelve:
el elemento de configuración o nulo si el elemento no existe
- Tipo del valor devuelto:
cadena|nulo
Obtener un elemento del archivo de configuración con una barra diagonal adjunta (si no está vacía)
- stringify_attributes($attributes[, $js])
- Parámetros:
$atributos (
mixed
) – cadena, matriz de pares clave-valor u objeto$js (
boolean
) – verdadero si los valores no necesitan comillas (estilo Javascript)
- Devuelve:
Cadena que contiene los pares clave/valor del atributo, separados por comas
- Tipo del valor devuelto:
cadena
Función auxiliar utilizada para convertir una cadena, matriz u objeto de atributos en una cadena.
Constantes globales
Las siguientes constantes siempre están disponibles en cualquier lugar dentro de su aplicación.
Constantes centrales
- constant APPPATH
La ruta al directorio aplicación.
- constant ROOTPATH
La ruta al directorio raíz del proyecto. Justo encima de
APPPATH
.
- constant SYSTEMPATH
La ruta al directorio sistema.
- constant FCPATH
La ruta al directorio que contiene el controlador frontal.
- constant WRITEPATH
La ruta al directorio escribible.
Constantes de tiempo
- constant SECOND
Es igual a 1.
- constant MINUTE
Es igual a 60.
- constant HOUR
Es igual a 3600.
- constant DAY
Es igual a 86400.
- constant WEEK
Equivale a 604800.
- constant MONTH
Es igual a 2592000.
- constant YEAR
Equivale a 31536000.
- constant DECADE
Es igual a 315360000.