17. Cadenas de caracteres o strings

Una cadena es una sucesión de caracteres, con lo cual podríamos acceder a un caracter de manera independiente.

Ejm

  $cadena = "aeiou";

  // Recuperar la letra e
  echo $cadena[1];

 

Tamaño de una cadena

Para saber el tamaño de una cadena existe la función PHP strlen(nombre_cadena) a la que le pasamos como parámetro la cadena, esta función nos devuelve la cantidad de bits de una cadena, si lo que queremos es que nos devuelva la cantidad de caracteres se utiliza la función 

Índice de un determinado caracter

Existe una función que permite saber el índice donde se encuentra determinado caracter, se trata de la función strpos(cadena, caracter); a la que le pasamos dos argumentos, la cadena donde queremos buscar, y como segundo parámetro el caracter que queremos buscar su índice. Va a devolver la primera coincidencia comenzando de izquierda a derecha, si lo que quisiéramos es que devolviera la primera coincidencia comenzando de derecha a izquierda utilizamos una función parecida, strrpos(cadena, caracter);.

Una cadena dentro de otra cadena

Para buscar una cadena dentro de otra utilizamos la función str_contains(cadena, cadena que queremos buscar);, devolverá un valor booleano en el caso de que se encuentre o no la cadena buscada.

Recuperar cierta porción

Para ello existe la función substr(cadena, índice a partir del cual comienza a substraer, índice hasta el que desea substraer); Si como segundo parámetro usamos un signo negativo, por ejm -2, devolverá las dos últimas letras.

Cambiar una porción de cadena por otra

Para ello tenemos la función str_replace(cadena a reemplazar, cadena que reemplaza, cadena); a la que le pasamos 3 parámetros, la cadena a reemplazar, la cadena que reemplaza y por último la cadena.

Resumen

  • strlen(cadena): devuelve la cantidad de bits de la cadena pasada como parámetro
  • mb_strlen(cadena): devuelve la cantidad de caracteres de la cadena pasada como parámetro
  • strpos(cadena, caracter): devuelve el índice de la primera coincidencia de un caracter buscado en una cadena de izquierda a derecha
  • strrpos(cadena, caracter): devuelve el índice de la primera coincidencia comenzando de derecha a izquierda
  • str_contains(cadena, cadena buscada): devuelve un booleano si encuentra la cadena buscada dentro de la cadena a buscar.
  • str_starts_with(cadena, cadena se encuentra al inicio): devuelve un booleano dependiendo de si la cadena se encuentra al inicio o no.
  • str_ends_with(cadena, cadena se encuentra al final): devuelve un booleano dependiendo de si la cadena se encuentra al final o no.
  • strcmp(cadena1, cadena2): compara dos cadenas, devuelve tres posibles valores, 0 en el caso de que las cadenas sean iguales, 1 en el caso de que la segunda cadena sea más grande que la primera, y -1 en el caso de que la primera cadena sea más grande que la segunda. Las cadenas tienen que ser estrictamente iguales.
  • strcasecmp(cadena1, cadena2): igual que la anterior pero no distingue mayúsculas de minúsculas
  • substr(cadena, índice, longitud): substrae una porción de la cadena pasada
  • strtolower(cadena): transforma la cadena a minúsculas
  • strtoupper(cadena): transforma la cadena a mayúsculas
  • ucfirst(cadena): devuelve la cadena con la primera letra en mayúscula
  • ucwords(cadena): devuelve todas las primeras letras de cada palabra en mayúsculas