Ayudante HTML
El archivo HTML Helper contiene funciones que ayudan a trabajar con HTML.
Configuración
Desde v7.3.0
, se anulan los elementos HTML (por ejemplo, <img>
) en html_helper
las funciones se han cambiado para que sean compatibles con HTML5 de forma predeterminada y si necesita ser compatible con XHTML, debe configurar la propiedad $html5
en app/Config/DocTypes. php a false
.
Cargando este ayudante
Este ayudante se carga usando el siguiente código:
<?php
helper('html');
Funciones disponibles
Están disponibles las siguientes funciones:
- img([$src = ''[, $indexPage = false[, $attributes = '']]])
- Parámetros:
$src (
string|array
) – URI de origen de la imagen o conjunto de atributos y valores$indexPage (
bool
) – Si se debe tratar$src
como una cadena URI enrutada$attributes (
Mixed
) – atributos HTML adicionales
- Devuelve:
etiqueta de imagen HTML
- Tipo del valor devuelto:
cadena
Le permite crear HTML
<img />
etiquetas. El primer parámetro contiene el fuente de imagen. Ejemplo:<?php echo img('images/picture.jpg'); // <img src="http://site.com/images/picture.jpg">
Hay un segundo parámetro opcional que es un valor verdadero/falso que detalles si el src debe tener la página especificada por
$config['indexPage']
agregado a la dirección que crea. Presumiblemente, esto sería si estuviera usando un controlador de medios:<?php echo img('images/picture.jpg', true); // <img src="http://site.com/index.php/images/picture.jpg" alt="">
Además, se puede pasar una matriz asociativa como primer parámetro, para un control total sobre todos los atributos y valores. Si un atributo alt no se proporciona, Higgs generará una cadena vacía.
Ejemplo:
<?php $imageProperties = [ 'src' => 'images/picture.jpg', 'alt' => 'Me, demonstrating how to eat 4 slices of pizza at one time', 'class' => 'post_images', 'width' => '200', 'height' => '200', 'title' => 'That was quite a night', 'rel' => 'lightbox', ]; img($imageProperties); // <img src="http://site.com/index.php/images/picture.jpg" alt="Me, demonstrating how to eat 4 slices of pizza at one time" class="post_images" width="200" height="200" title="That was quite a night" rel="lightbox">
- img_data([$src = ''[, $indexPage = false[, $attributes = '']]])
- Parámetros:
$path (
string
) – Ruta al archivo de imagen$mime (
string|null
) – tipo MIME a usar, o nulo para adivinar
- Devuelve:
cadena de imagen binaria codificada en base64
- Tipo del valor devuelto:
cadena
Genera una cadena lista para src a partir de una imagen utilizando el protocolo «datos:». Ejemplo:
<?php $src = img_data('public/images/picture.jpg'); // data:image/jpg;base64,R0lGODl... echo img($src);
Hay un segundo parámetro opcional para especificar el tipo MIME; de lo contrario, el La función utilizará su configuración de Mimes para adivinar:
<?php $src = img_data('path/img_without_extension', 'image/png'); // data:image/png;base64,HT5A822...
Tenga en cuenta que
$path
debe existir y ser un formato de imagen legible compatible con el protocolodata:
. Esta función no se recomienda para archivos muy grandes, pero proporciona una manera conveniente de servir imágenes desde su aplicación a las que no se puede acceder desde la web (por ejemplo, en public/).
- link_tag([$href = ''[, $rel = 'stylesheet'[, $type = 'text/css'[, $title = ''[, $media = ''[, $indexPage = false[, $hreflang = '']]]]]]])
- Parámetros:
$href (
string
) – la fuente del archivo de enlace$rel (
string
) – tipo de relación$type (
string
) – Tipo del documento relacionado$título (
string
) – Título del enlace$media (
string
) – tipo de medio$indexPage (
bool
) – Si se debe tratar$src
como una cadena URI enrutada$hreflang (
strings
) – tipo Hreflang
- Devuelve:
etiqueta de enlace HTML
- Tipo del valor devuelto:
cadena
Le permite crear HTML
<link />
etiquetas. Esto es útil para enlaces de hojas de estilo, así como otros enlaces. Los parámetros son href, con rel opcional, tipo, título, medios y página de índice.indexPage es un valor booleano que especifica si href debería tener la página especificada por
$config['indexPage']
agregada a la dirección que crea.Ejemplo:
<?php echo link_tag('css/mystyles.css'); // <link href="http://site.com/css/mystyles.css" rel="stylesheet" type="text/css">
Más ejemplos:
<?php echo link_tag('favicon.ico', 'shortcut icon', 'image/ico'); // <link href="http://site.com/favicon.ico" rel="shortcut icon" type="image/ico"> echo link_tag('feed', 'alternate', 'application/rss+xml', 'My RSS Feed'); // <link href="http://site.com/feed" rel="alternate" type="application/rss+xml" title="My RSS Feed">
Alternativamente, se puede pasar una matriz asociativa a la función
link_tag()
para un control total sobre todos los atributos y valores:<?php $link = [ 'href' => 'css/printer.css', 'rel' => 'stylesheet', 'type' => 'text/css', 'media' => 'print', ]; echo link_tag($link); // <link href="http://site.com/css/printer.css" rel="stylesheet" type="text/css" media="print">
- script_tag([$src = ''[, $indexPage = false]])
- Parámetros:
$src (
array|string
) – El nombre de origen o URL de un archivo JavaScript, o una matriz asociativa que especifica los atributos$indexPage (
bool
) – Si se debe tratar$src
como una cadena URI enrutada
- Devuelve:
etiqueta de secuencia de comandos HTML
- Tipo del valor devuelto:
cadena
Le permite crear HTML
<script></script>
etiquetas. El parámetro es src, con indexPage opcional.indexPage es un valor booleano que especifica si src debería tener la página especificada por
$config['indexPage']
agregada a la dirección que crea.Ejemplo:
<?php echo script_tag('js/mystyles.js'); // <script src="http://site.com/js/mystyles.js"></script>
Alternativamente, se puede pasar una matriz asociativa a la función
script_tag()
para un control total sobre todos los atributos y valores:<?php $script = ['src' => 'js/printer.js', 'defer' => null]; echo script_tag($script); // <script src="http://site.com/js/printer.js" defer></script>
- ul($list[, $attributes = ''])
- Parámetros:
$list (
array
) – Listar entradas$atributos (
array
) – atributos HTML
- Devuelve:
lista desordenada con formato HTML
- Tipo del valor devuelto:
cadena
Le permite generar listas HTML desordenadas a partir de archivos simples o matrices multidimensionales. Ejemplo:
<?php $list = [ 'red', 'blue', 'green', 'yellow', ]; $attributes = [ 'class' => 'boldlist', 'id' => 'mylist', ]; echo ul($list, $attributes);
El código anterior producirá esto:
<ul class="boldlist" id="mylist"> <li>rojo</li> <li>azul</li> <li>verde</li> <li>amarillo</li> </ul>
Aquí hay un ejemplo más complejo, usando una matriz multidimensional:
<?php $attributes = [ 'class' => 'boldlist', 'id' => 'mylist', ]; $list = [ 'colors' => [ 'red', 'blue', 'green', ], 'shapes' => [ 'round', 'square', 'circles' => [ 'ellipse', 'oval', 'sphere', ], ], 'moods' => [ 'happy', 'upset' => [ 'defeated' => [ 'dejected', 'disheartened', 'depressed', ], 'annoyed', 'cross', 'angry', ], ], ]; echo ul($list, $attributes);
El código anterior producirá esto:
<ul class="boldlist" id="mylist"> <li>colores <ul> <li>rojo</li> <li>azul</li> <li>verde</li> </ul> </li> <li>formas <ul> <li>redondo</li> <li>cuadrado</li> <li>círculos <ul> <li>elipse</li> <li>oval</li> <li>esfera</li> </ul> </li> </ul> </li> <li>estados de ánimo <ul> <li>feliz</li> <li>decepcionado <ul> <li>derrotado <ul> <li>abatido</li> <li>descorazonado</li> <li>deprimido</li> </ul> </li> <li>enojado</li> <li>cruz</li> <li>enojado</li> </ul> </li> </ul> </li> </ul>
- ol($list, $attributes = '')
- Parámetros:
$list (
array
) – Listar entradas$atributos (
array
) – atributos HTML
- Devuelve:
lista ordenada con formato HTML
- Tipo del valor devuelto:
cadena
Idéntico a
ul()
, solo que produce el<ol>``etiqueta para listas ordenadas en lugar de ``<ul>
.
- video($src[, $unsupportedMessage = ''[, $attributes = ''[, $tracks = [][, $indexPage = false]]]])
- Parámetros:
$src (
mixed
) – ya sea una cadena de origen o una matriz de fuentes. Ver funciónsource()
$unsupportedMessage (
string
) – el mensaje que se mostrará si la etiqueta multimedia no es compatible con el navegador$atributos (
string
) – atributos HTML$tracks (
array
) – utiliza la función track dentro de una matriz. Ver funcióntrack()
$páginaíndice (
bool
) –
- Devuelve:
elemento de vídeo con formato HTML
- Tipo del valor devuelto:
cadena
Le permite generar elementos de video HTML desde simples o matrices de origen. Ejemplo:
<?php $tracks = [ track('subtitles_no.vtt', 'subtitles', 'no', 'Norwegian No'), track('subtitles_yes.vtt', 'subtitles', 'yes', 'Norwegian Yes'), ]; echo video('test.mp4', 'Your browser does not support the video tag.', 'controls'); echo video( 'http://www.Higgs.com/test.mp4', 'Your browser does not support the video tag.', 'controls', $tracks ); echo video( [ source('movie.mp4', 'video/mp4', 'class="test"'), source('movie.ogg', 'video/ogg'), source('movie.mov', 'video/quicktime'), source('movie.ogv', 'video/ogv; codecs=dirac, speex'), ], 'Your browser does not support the video tag.', 'class="test" controls', $tracks );
El código anterior producirá esto:
<video src="test.mp4" controls> Su navegador no soporta la etiqueta de vídeo. </video> <video src="http://www.Higgs.com/test.mp4" controls> <track src="subtitles_no.vtt" kind="subtitles" srclang="no" label="Norwegian No" /> <track src="subtitles_yes.vtt" kind="subtitles" srclang="yes" label="Norwegian Yes" /> Su navegador no soporta la etiqueta de vídeo. </video> <video class="test" controls> <source src="movie.mp4" type="video/mp4" class="test" /> <source src="movie.ogg" type="video/ogg" /> <source src="movie.mov" type="video/quicktime" /> <source src="movie.ogv" type="video/ogv; codecs=dirac, speex" /> <track src="subtitles_no.vtt" kind="subtitles" srclang="no" label="Norwegian No" /> <track src="subtitles_yes.vtt" kind="subtitles" srclang="yes" label="Norwegian Yes" /> Su navegador no soporta la etiqueta de vídeo. </video>
- audio($src[, $unsupportedMessage = ''[, $attributes = ''[, $tracks = [][, $indexPage = false]]]])
- Parámetros:
$src (
mixed
) – ya sea una cadena de origen o una matriz de fuentes. Ver funciónsource()
$unsupportedMessage (
string
) – el mensaje que se mostrará si la etiqueta multimedia no es compatible con el navegador$atributos (
strings
) –$tracks (
array
) – utiliza la función track dentro de una matriz. Ver funcióntrack()
$páginaíndice (
bool
) –
- Devuelve:
elemento de audio con formato HTML
- Tipo del valor devuelto:
cadena
Idéntico a
video()
, solo que produce el<audio>
etiqueta en lugar de<video>
.
- source($src = ''[, $type = false[, $attributes = '']])
- Parámetros:
$src (
string
) – La ruta del recurso multimedia$type (
bool
) – el tipo MIME del recurso con parámetros de códecs opcionales$atributos (
array
) – atributos HTML
- Devuelve:
etiqueta fuente HTML
- Tipo del valor devuelto:
cadena
Le permite crear HTML
<source />
etiquetas. El primer parámetro contiene el fuente fuente. Ejemplo:<?php echo source('movie.mp4', 'video/mp4', 'class="test"'); // <source src="movie.mp4" type="video/mp4" class="test">
- embed($src = ''[, $type = false[, $attributes = ''[, $indexPage = false]]])
- Parámetros:
$src (
string
) – La ruta del recurso a incrustar$tipo (
bool
) – tipo MIME$atributos (
array
) – atributos HTML$páginaíndice (
bool
) –
- Devuelve:
etiqueta HTML incrustada
- Tipo del valor devuelto:
cadena
Le permite crear HTML
<embed />
etiquetas. El primer parámetro contiene el insertar fuente. Ejemplo:<?php echo embed('movie.mov', 'video/quicktime', 'class="test"'); // <embed src="movie.mov" type="video/quicktime" class="test">
- object($data = ''[, $type = false[, $attributes = '']])
- Parámetros:
$data (
string
) – una URL de recurso$type (
bool
) – tipo de contenido del recurso$atributos (
array
) – atributos HTML$params (
array
) – utiliza la función param dentro de una matriz. Ver funciónparam()
- Devuelve:
etiqueta de objeto HTML
- Tipo del valor devuelto:
cadena
Le permite crear HTML
<object />
etiquetas. El primer parámetro contiene el datos del objeto. Ejemplo:<?php echo object('movie.swf', 'application/x-shockwave-flash', 'class="test"'); echo object( 'movie.swf', 'application/x-shockwave-flash', 'class="test"', [ param('foo', 'bar', 'ref', 'class="test"'), param('hello', 'world', 'ref', 'class="test"'), ] );
El código anterior producirá esto:
<object data="movie.swf" class="test"></object> <object data="movie.swf" class="test"> <param name="foo" type="ref" value="bar" class="test" /> <param name="hello" type="ref" value="world" class="test" /> </object>
- param($name = ''[, $type = false[, $attributes = '']])
- Parámetros:
$nombre (
string
) – el nombre del parámetro$valor (
string
) – el valor del parámetro$atributos (
array
) – atributos HTML
- Devuelve:
etiqueta de parámetro HTML
- Tipo del valor devuelto:
cadena
Le permite crear HTML
<param />
etiquetas. El primer parámetro contiene el fuente del parámetro. Ejemplo:<?php echo param('movie.mov', 'video/quicktime', 'class="test"'); // <param src="movie.mov" type="video/quicktime" class="test">
- track($name = ''[, $type = false[, $attributes = '']])
- Parámetros:
$nombre (
string
) – el nombre del parámetro$valor (
string
) – el valor del parámetro$atributos (
array
) – atributos HTML
- Devuelve:
etiqueta de seguimiento HTML
- Tipo del valor devuelto:
cadena
Genera un elemento de pista para especificar pistas cronometradas. Las pistas son formateado en formato WebVTT. Ejemplo:
<?php echo track('subtitles_no.vtt', 'subtitles', 'no', 'Norwegian No'); // <track src="subtitles_no.vtt" kind="subtitles" srclang="no" label="Norwegian No">
- doctype([$type = 'html5'])
- Parámetros:
$tipo (
string
) – nombre de tipo de documento
- Devuelve:
etiqueta HTML DocType
- Tipo del valor devuelto:
cadena
Le ayuda a generar declaraciones de tipo de documento o DTD. HTML5 se utiliza de forma predeterminada, pero hay muchos tipos de documentos disponibles.
Ejemplo:
<?php echo doctype(); // <!DOCTYPE html> echo doctype('html4-trans'); // <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
La siguiente es una lista de las opciones de tipo de documento predefinidas. Estos son configurables, extraídos de app/Config/DocTypes.php, o podrían anularse en su configuración .env.