Ayudante de texto
El archivo Text Helper contiene funciones que ayudan a trabajar con texto.
Cargando este ayudante
Este ayudante se carga usando el siguiente código:
<?php
helper('text');
Funciones disponibles
Están disponibles las siguientes funciones:
- random_string([$type = 'alnum'[, $len = 8]])
- Parámetros:
$tipo (
string
) – tipo de aleatorización$len (
int
) – longitud de la cadena de salida
- Devuelve:
una cadena aleatoria
- Tipo del valor devuelto:
cadena
Genera una cadena aleatoria según el tipo y la longitud que especifique. Útil para crear contraseñas o generar hashes aleatorios.
Advertencia
For types: basic, md5, and sha1, generated strings no son criptográficamente seguros. Por lo tanto, estos tipos no se pueden utilizar. para fines criptográficos o fines que requieran valores de retorno inimaginables. Desde v7.3.3, estos tipos están en desuso.
El primer parámetro especifica el tipo de cadena, el segundo parámetro especifica la longitud. Están disponibles las siguientes opciones:
alfa: una cadena con letras minúsculas y mayúsculas únicamente.
alnum: Cadena alfanumérica con caracteres en minúsculas y mayúsculas.
básico: [obsoleto] Un número aleatorio basado en
mt_rand()
(longitud ignorada).numeric: Cadena numérica.
nozero: Cadena numérica sin ceros.
md5: [obsoleto] Un número aleatorio cifrado basado en
md5()
(longitud fija de 32).sha1: [obsoleto] Un número aleatorio cifrado basado en
sha1()
(longitud fija de 40).crypto: Una cadena aleatoria basada en
random_bytes()
.
Nota
When you use crypto, you must set an even number to the second parameter. Desde v7.2.2, si establece un número impar, se generará
InvalidArgumentException
.Nota
Since v7.3.3, alpha, alnum and nozero use
random_byte()
, y numeric usarandom_int()
. En las versiones anteriores, usabastr_shuffle()
que no es criptográficamente seguro.Ejemplo de uso:
<?php echo random_string('alnum', 16);
- increment_string($str[, $separator = '_'[, $first = 1]])
- Parámetros:
$cadena (
string
) – cadena de entrada$separator (
string
) – Separador al que agregar un número duplicado$first (
int
) – Número inicial
- Devuelve:
una cadena incrementada
- Tipo del valor devuelto:
cadena
Incrementa una cadena agregándole un número o aumentando el número. Útil para crear «copias» o un archivo o duplicar una base de datos contenido que tiene títulos o slugs únicos.
Ejemplo de uso:
<?php echo increment_string('file', '_'); // "file_1" echo increment_string('file', '-', 2); // "file-2" echo increment_string('file_4'); // "file_5"
- alternator($args)
- Parámetros:
$args (
mixed
) – un número variable de argumentos
- Devuelve:
Cadena(s) alternada(s)
- Tipo del valor devuelto:
mixto
Permite alternar dos o más elementos al recorrerlos un bucle. Ejemplo:
<?php for ($i = 0; $i < 10; $i++) { echo alternator('string one', 'string two'); }
Puede agregar tantos parámetros como desee y con cada iteración de su bucle se devolverá el siguiente elemento.
<?php for ($i = 0; $i < 10; $i++) { echo alternator('one', 'two', 'three', 'four', 'five'); }
Nota
To use multiple separate calls to this function simply call the función sin argumentos para reinicializar.
- reduce_double_slashes($str)
- Parámetros:
$cadena (
string
) – cadena de entrada
- Devuelve:
Una cadena con barras normalizadas
- Tipo del valor devuelto:
cadena
Convierte barras dobles en una cadena en una sola barra, excepto aquellas se encuentra en los prefijos del protocolo URL (por ejemplo, http://).
Ejemplo:
<?php $string = 'http://example.com//index.php'; echo reduce_double_slashes($string); // results in "http://example.com/index.php"
- strip_slashes($data)
- Parámetros:
$datos (
mixed
) – cadena de entrada o una matriz de cadenas
- Devuelve:
Cadena(s) con barras eliminadas
- Tipo del valor devuelto:
mixto
Elimina las barras diagonales de una serie de cadenas.
Ejemplo:
<?php $str = [ 'question' => "Is your name O\\'reilly?", 'answer' => "No, my name is O\\'connor.", ]; $str = strip_slashes($str);
Lo anterior devolverá la siguiente matriz:
<?php [ 'question' => "Is your name O'reilly?", 'answer' => "No, my name is O'connor.", ];
Nota
For historical reasons, this function will also accept y manejar entradas de cadenas. Sin embargo, esto lo convierte en sólo un alias de
stripslashes()
.
- reduce_multiples($str[, $character = ''[, $trim = false]])
- Parámetros:
$str (
string
) – Texto para buscar$character (
string
) – Carácter a reducir$trim (
bool
) – si se debe recortar también el carácter especificado
- Devuelve:
cadena reducida
- Tipo del valor devuelto:
cadena
Reduce múltiples instancias de un carácter particular que ocurre directamente uno tras otro. Ejemplo:
<?php $string = 'Fred, Bill,, Joe, Jimmy'; $string = reduce_multiples($string, ','); // results in "Fred, Bill, Joe, Jimmy"
Si el tercer parámetro se establece en verdadero, eliminará las apariciones del carácter al principio y al final de la cadena. Ejemplo:
<?php $string = ',Fred, Bill,, Joe, Jimmy,'; $string = reduce_multiples($string, ', ', true); // results in "Fred, Bill, Joe, Jimmy"
- quotes_to_entities($str)
- Parámetros:
$cadena (
string
) – cadena de entrada
- Devuelve:
Cadena con comillas convertidas a entidades HTML
- Tipo del valor devuelto:
cadena
Convierte comillas simples y dobles en una cadena al HTML correspondiente entidades. Ejemplo:
<?php $string = "Joe's \"dinner\""; $string = quotes_to_entities($string); // results in "Joe's "dinner""
- strip_quotes($str)
- Parámetros:
$cadena (
string
) – cadena de entrada
- Devuelve:
Cadena sin comillas
- Tipo del valor devuelto:
cadena
Elimina comillas simples y dobles de una cadena. Ejemplo:
<?php $string = "Joe's \"dinner\""; $string = strip_quotes($string); // results in "Joes dinner"
- word_limiter($str[, $limit = 100[, $end_char = '…']])
- Parámetros:
$cadena (
string
) – cadena de entrada$límite (
int
) – Límite$end_char (
string
) – Carácter final (normalmente puntos suspensivos)
- Devuelve:
cadena de palabras limitadas
- Tipo del valor devuelto:
cadena
Trunca una cadena al número de palabras especificadas. Ejemplo:
<?php $string = 'Here is a nice text string consisting of eleven words.'; $string = word_limiter($string, 4); // Returns: Here is a nice
El tercer parámetro es un sufijo opcional agregado a la cadena. Por De forma predeterminada, agrega puntos suspensivos.
- character_limiter($str[, $n = 500[, $end_char = '…']])
- Parámetros:
$cadena (
string
) – cadena de entrada$n (
int
) – Número de caracteres$end_char (
string
) – Carácter final (normalmente puntos suspensivos)
- Devuelve:
cadena de caracteres limitados
- Tipo del valor devuelto:
cadena
Trunca una cadena al número de caracteres especificado. Él mantiene la integridad de las palabras, por lo que el número de caracteres puede ser ligeramente más o menos de lo que especificas.
Ejemplo:
<?php $string = 'Here is a nice text string consisting of eleven words.'; $string = character_limiter($string, 20); // Returns: Here is a nice text string
El tercer parámetro es un sufijo opcional agregado a la cadena, si no declarado, este ayudante utiliza puntos suspensivos.
Nota
If you need to truncate to an exact number of characters, please consulte la función
ellipsize()
a continuación.
- ascii_to_entities($str)
- Parámetros:
$cadena (
string
) – cadena de entrada
- Devuelve:
Una cadena con valores ASCII convertidos en entidades
- Tipo del valor devuelto:
cadena
Convierte valores ASCII en entidades de caracteres, incluidos ASCII alto y MS Caracteres de palabras que pueden causar problemas cuando se usan en una página web, por lo que se pueden mostrar consistentemente independientemente de la configuración del navegador o almacenarse confiablemente en una base de datos. Existe cierta dependencia de su servidor. conjuntos de caracteres admitidos, por lo que puede que no sea 100% confiable en todos los casos, pero en su mayor parte, debería identificar correctamente los personajes fuera el rango normal (como caracteres acentuados).
Ejemplo:
<?php $string = ascii_to_entities($string);
- entities_to_ascii($str[, $all = true])
- Parámetros:
$cadena (
string
) – cadena de entrada$all (
bool
) – si se deben convertir también entidades inseguras
- Devuelve:
una cadena con entidades HTML convertidas a caracteres ASCII
- Tipo del valor devuelto:
cadena
Esta función hace lo contrario de
ascii_to_entities()
. Convierte las entidades de caracteres nuevamente en ASCII.
- convert_accented_characters($str)
- Parámetros:
$cadena (
string
) – cadena de entrada
- Devuelve:
Una cadena con caracteres acentuados convertidos
- Tipo del valor devuelto:
cadena
Translitera caracteres ASCII altos a equivalentes ASCII bajos. Útil cuando es necesario utilizar caracteres no ingleses donde solo se utiliza ASCII estándar Los caracteres se utilizan de forma segura, por ejemplo, en las URL.
Ejemplo:
<?php $string = convert_accented_characters($string);
Nota
This function uses a companion config file app/Config/ForeignCharacters.php para definir el destino y de matriz para transliteración.
- word_censor($str, $censored[, $replacement = ''])
- Parámetros:
$cadena (
string
) – cadena de entrada$censurado (
array
) – Lista de malas palabras para censurar$replacement (
string
) – Con qué reemplazar las malas palabras
- Devuelve:
cadena censurada
- Tipo del valor devuelto:
cadena
Le permite censurar palabras dentro de una cadena de texto. El primer parámetro contendrá la cadena original. El segundo contendrá una serie de palabras que no permites. El tercer parámetro (opcional) puede contener un valor de reemplazo para las palabras. Si no se especifica se reemplazan con signos de libra: ####.
Ejemplo:
<?php $disallowed = ['darn', 'shucks', 'golly', 'phooey']; $string = word_censor($string, $disallowed, 'Beep!');
- highlight_code($str)
- Parámetros:
$cadena (
string
) – cadena de entrada
- Devuelve:
Cadena con código resaltado mediante HTML
- Tipo del valor devuelto:
cadena
Colorea una cadena de código (PHP, HTML, etc.). Ejemplo:
<?php $string = highlight_code($string);
La función utiliza la función
highlight_string()
de PHP, por lo que Los colores utilizados son los especificados en su archivo php.ini.
- highlight_phrase($str, $phrase[, $tag_open = '<mark>'[, $tag_close = '</mark>']])
- Parámetros:
$cadena (
string
) – cadena de entrada$frase (
string
) – Frase a resaltar$tag_open (
string
) – etiqueta de apertura utilizada para resaltar$tag_close (
string
) – etiqueta de cierre para el resaltado
- Devuelve:
Cadena con una frase resaltada vía HTML
- Tipo del valor devuelto:
cadena
Resaltará una frase dentro de una cadena de texto. El primer parámetro será contendrá la cadena original, la segunda contendrá la frase que deseas a más destacado. El tercer y cuarto parámetro contendrán el abrir/cerrar etiquetas HTML en las que desea incluir la frase.
Ejemplo:
<?php $string = 'Here is a nice text string about nothing in particular.'; echo highlight_phrase($string, 'nice text', '<span style="color:#990000;">', '</span>');
El código anterior imprime:
Aquí hay una <span style="color:#990000;">bonita cadena de texto</span> sobre nada en particular.
Nota
This function used to use the
<strong>
tag by default. Older browsers Es posible que no admita la nueva etiqueta de marca HTML5, por lo que se recomienda que inserte el siguiente código CSS en su hoja de estilo si necesita soporte tales navegadores:marca { fondo: #ff0; color: #000; };
- word_wrap($str[, $charlim = 76])
- Parámetros:
$cadena (
string
) – cadena de entrada$charlim (
int
) – límite de caracteres
- Devuelve:
cadena envuelta en palabras
- Tipo del valor devuelto:
cadena
Envuelve el texto en el recuento de caracteres especificado manteniendo palabras completas.
Ejemplo:
<?php $string = 'Here is a simple string of text that will help us demonstrate this function.'; echo word_wrap($string, 25); /* * Would produce: * Here is a simple string * of text that will help us * demonstrate this * function. * * Excessively long words will be split, but URLs will not be. */
- ellipsize($str, $max_length[, $position = 1[, $ellipsis = '…']])
- Parámetros:
$cadena (
string
) – cadena de entrada$max_length (
int
) – límite de longitud de cadena$position (
Mixed
) – Posición para dividir en (int o float)$ellipsis (
string
) – Qué usar como carácter de puntos suspensivos
- Devuelve:
cadena elíptica
- Tipo del valor devuelto:
cadena
Esta función eliminará las etiquetas de una cadena, la dividirá en un punto definido longitud máxima e inserte puntos suspensivos.
El primer parámetro es la cadena a eliminar, el segundo es el número de caracteres en la cadena final. El tercer parámetro es en qué parte del cadena, los puntos suspensivos deben aparecer de 0 a 1, de izquierda a derecha. Para ejemplo. un valor de 1 colocará los puntos suspensivos a la derecha del cuerda, .5 en el medio y 0 a la izquierda.
Un cuarto parámetro opcional es el tipo de puntos suspensivos. Por defecto, …se insertará.
Ejemplo:
<?php $str = 'this_string_is_entirely_too_long_and_might_break_my_design.jpg'; echo ellipsize($str, 32, .5);
Produce:
this_string_is_e…ak_my_design.jpg
- excerpt($text, $phrase = false, $radius = 100, $ellipsis = '...')
- Parámetros:
$text (
string
) – Texto para extraer un extracto$phrase (
string
) – Frase o palabra para extraer el texto alrededor$radius (
int
) – Número de caracteres antes y después de $frase$ellipsis (
string
) – Qué usar como carácter de puntos suspensivos
- Devuelve:
Extracto.
- Tipo del valor devuelto:
cadena
Esta función extraerá $radius el número de caracteres antes y después del frase $ central con puntos suspensivos antes y después.
El primer parámetro es el texto del que extraer un extracto, el segundo es el palabra o frase central para contar antes y después. El tercer parámetro es el Número de caracteres a contar antes y después de la frase central. si no hay frase pasado, el extracto incluirá los primeros caracteres $radius con puntos suspensivos al final.
Ejemplo:
<?php $text = 'Ut vel faucibus odio. Quisque quis congue libero. Etiam gravida eros lorem, eget porttitor augue dignissim tincidunt. In eget risus eget mauris faucibus molestie vitae ultricies odio. Vestibulum id ultricies diam. Curabitur non mauris lectus. Phasellus eu sodales sem. Integer dictum purus ac enim hendrerit gravida. Donec ac magna vel nunc tincidunt molestie sed vitae nisl. Cras sed auctor mauris, non dictum tortor. Nulla vel scelerisque arcu. Cras ac ipsum sit amet augue laoreet laoreet. Aenean a risus lacus. Sed ut tortor diam.'; echo excerpt($text, 'Donec');
Produce:
... non mauris lectus. Phasellus eu sodales sem. Integer dictum purus ac para hendrerit embarazada Hasta un empleado grande o ahora tinciduo pero fanáticos de la vida Mañana, sin embargo, la curiosidad la tiene el autor, no el hablante. ...