4.- Funciones
PHP nos dota de un conjunto de funciones que permiten realizar
diferentes operaciones sobre las cadenas de caracteres. Concretamente
las funciones podemos dividirlas, entre otros, en diferentes grupos:
mayúsculas y minúsculas, eliminación de espacios, comparaciones y
codificación ASCII.
En cada uno de los apartados iremos explicando las funciones, así como ejemplos que las ilustren.
4.1.- Mayúsculas y minúsculas
Existe un conjunto de funciones que permiten pasar los strings
de mayúsculas a minúsculas y viceversa. Entre las funciones encontramos:
- strtoupper: Pasa toda la cadena a letras mayúsculas. Ejemplo:
$cadena = "paso a mayúsculas"
$cadena2 = strtoupper($cadena) --> $cadena2 = "PASO A MAYÚSCULAS"
- strtolower: Pasa toda la cadena a letras minúsculas. Ejemplo:
$cadena = "PASO A MINÚSCULAS"
$cadena2 = strtolower($cadena) --> $cadena2 = "paso a minúsculas"
- ucfirst: Pasa el primer carácter de una cadena a mayúscula. Ejemplo:
$cadena = "paso a mayúsculas del primer carácter"
$cadena2 = ucfirst($cadena) --> $cadena2 = "Paso a mayúsculas del primer carácter"
- ucwords: Pasa a mayúsculas el primer carácter de cada
palabra de un string (separadas por blancos, tabulaciones y saltos de
línea). Ejemplo:
$cadena = "paso a mayúsculas del primer carácter de cada palabra"
$cadena2 = ucwords($cadena) --> $cadena2 = "Paso A Mayúsculas Del Primer Carácter De Cada Palabra"
Mostramos un programa en el que se implementan las funciones:
El resultado será el previsto:

4.2.- Eliminación de espacios
Las funciones para eliminar blancos y saltos de línea son muy
útiles en aquellos casos en los que no queremos dejar espacios entre los
diferentes caracteres de las cadenas. Entre las principales se
encuentran:
- chop: Elimina blancos y saltos de línea a la derecha de un string dado. Ejemplo:
$cadena = "elimina los espacios derecha "
$cadena2 = chop($cadena) --> $cadena2 = "elimina los espacios derecha"
- ltrim: Elimina blancos y saltos de línea a la izquierda de un string. Ejemplo:
$cadena = " elimina los espacios izquierda"
$cadena2 = ltrim($cadena) --> $cadena2 = "elimina los espacios izquierda"
- trim: Elimina blancos y saltos de línea a derecha e izquierda de un string. Ejemplo:
$cadena = " elimina los espacios ambos lados "
$cadena2 = trim($cadena) --> $cadena2 = "elimina los espacios ambos lados"
Mostramos un programa en el que se implementan las funciones:

Y su resultado:

4.3.- Comparaciones
Las funciones de comparacion ofrecen multitud de posibilidades,
entre ellas las de buscar ocurrencias de un string en otro. Las
principales funciones son:
- strpos(string1, string2): Devuelve la posición de la primera ocurrencia de string 2 dentro de string1. Ejemplo:
$cadena1 = "Hola a todos"
$cadena2 = "to"
$pos = strpos($cadena1, $cadena2) --> $pos = 7
- strspn(string1,string2): Devuelve la longitud en caracteres
de s1 contando desde el principio hasta que aparece un carácter en s1
que
no esta en s2. Ejemplo:
$cadena1 = "Hola a todos"
$cadena2 = "Hola"
$pos = strspn($cadena1, $cadena2) --> $pos = 4
- strcmp(string1,string2): Compara dos strings y devuelve 1, 0 o –1 según sea mayor el primero, iguales o el segundo. Ejemplo:
$cadena1 = "primero"
$cadena2 = "primera"
$res = strcmp($cadena1, $cadena2) --> $res = 1
- strcasecmp(string1,string2): Idem anterior pero case-insesitive (no distingue mayúsculas y minúsculas). Ejemplo:
$cadena1 = "Primero"
$cadena2 = "primero"
$res = strcasecmp($cadena1, $cadena2) --> $res = 0
En el siguiente programa se implementan los ejemplos vistos:

Y el resultado:

4.4.- Codificación ASCII
PHP nos ofrece dos funciones muy interesantes que nos permiten trabajar con los caracteres ASCII. Éstas son las siguientes:
- chr(num): Devuelve el carácter dado su número ascii. Ejemplo:
$num = 30
$car = chr($num) --> $car = 2
- ord(car): Dado un carácter devuelve su codigo ascii. Ejemplo:
$car = "a"
$num = ord($car) --> $num = 97
Un programa que simula lo anterior:

Y el resultado:

|