Introducción
Esta entrada es muy simple, veremos cómo convertir la primera letra de una palabra en mayúscula o minúscula, y también cómo capitalizar una oración completa.
En pocas palabras, veremos cómo poner la primera letra mayúscula usando PHP.
Veremos cómo convertir la palabra “hola” a “Hola” y cómo convertir la oración “hola mundo” en “Hola Mundo”. PHP ya tiene estas funciones incorporadas, así que esto será fácil.
Por cierto, esto también es llamado capitalización de texto o algo así.
Primera letra mayúscula
Esto es diferente a lo de abajo, porque convertirá únicamente la primera letra a mayúscula, sin importar si hay más palabras. La función es ucfirst que, según yo, quiere decir “upper case first”. Recibe una cadena y regresa igualmente una cadena, pero convertida.
Veamos un ejemplo para ver cómo capitalizar únicamente la primera letra:
<?php
$saludo = "hola";
# Imprime Hola
echo ucfirst($saludo);
$oracion = "el perro juega con la pelota";
# Imprime El perro juega con la pelota
echo ucfirst($oracion);
?>
Así de simple es. Obviamente, si la primer letra es mayúscula, no le hace nada.
Si queremos que convierta todas las palabras, hay otra función que expongo más abajo.
Primera letra mayúscula en todas las palabras de una oración
Existe otra función que convierte todas las palabras en mayúscula. En el ejemplo de arriba vimos que “el perro juega con la pelota” se convertía en “El perro juega con la pelota”, pero habrá ocasiones en las que necesitaremos que se transforme en “El Perro Juega Con La Pelota”.
En caso de que sea así, usamos la función ucwords que quiere decir “upper case words”. Esta función ahora puede tomar dos argumentos, el primero es la cadena y el segundo (opcional) es una lista de delimitadores.
¿Qué son los delimitadores? Bueno, son espacios, tabulaciones y otros símbolos que PHP usa para saber cómo separar las palabras.
Por defecto son: espacio, avance de página, nueva línea, retorno de carro, tabulación horizontal y tabulación vertical.
Podemos especificar nuestros propios delimitadores, pero si no sabemos ni siquiera qué son, mejor los dejamos sin tocar.
La documentación oficial está aquí. Veamos un ejemplo:
<?php
$oracion = "el perro juega con la pelota";
# Imprime El Perro Juega Con La Pelota
echo ucwords($oracion);
?>
Ya dije que los delimitadores son opcionales, y como estamos contentos con que PHP los delimite por espacios todo está bien. La salida es “El Perro Juega Con La Pelota”.
Bonus: primera letra minúscula en PHP
Para terminar, quiero mencionar que también existe la función lcfirst, la cual quiere decir “lower case first”. Esta es llamada de la misma manera que ucfirst, pero con la diferencia de que transforma a minúscula en lugar de mayúscula.
Dejo un ejemplo:
<?php
$nombre = "Luis";
# Imprime luis
echo lcfirst($nombre);
?>
Pingback: Convertir cadena a mayúscula o minúscula en PHP - Parzibyte's blog