Cortar una cadena en PHP
En este post te mostraré a usar la función substr
para cortar una cadena en PHP (también conocido como cortar una palabra o cortar un string) desde un inicio hasta un fin.
También vamos a ver cómo cortar una cadena desde determinado carácter, es decir, eliminar lo que esté más allá de determinada letra.

Sintaxis de substr
La sintaxis es:
$cadenaCortada = substr($cadena, $inicio, $longitud);
Los argumentos son:
$cadena
: la cadena que se va a cortar$inicio
: el índice desde donde se comienza a cortar la cadena$longitud
: opcional. Cuántos caracteres tomar desde$inicio
.
Ejemplo de substr
Comencemos con un ejemplo sencillo. Vamos a cortar una palabra desde 0 hasta 12. Es decir, tomaremos 12 caracteres en total.
Como ves, cortamos la string y ahora el resultado es “Hola, mundo.”
Cuando el inicio no es 0
Hay que tener cuidado cuando cortamos una cadena y no es a partir del 0, pues puede haber resultados inesperados ya que recuerda que el tercer argumento es la longitud o cantidad que queremos cortar, no el fin.
Por ejemplo, siguiendo el código anterior, si solo se deseara obtener “mundo” se haría lo siguiente:
Ahora se corta desde la posición 6 y se toman 5 caracteres.
Cortar cadena en PHP dependiendo de caracter
Un uso que encontré para la función substr
fue cuando estaba mejorando mi caja de herramientas con PHP y quería capturar las variables GET al usar Phroute.
Para no confundir al lector, tenía esta cadena:
http://localhost/plantilla-php/usuarios?token=asdfg123
Y quería quitar todo lo que estuviera más allá del signo de interrogación (?
). Así que hice esto:
Con strpos obtuve la posición del signo de interrogación, esta función devuelve false
si no lo encuentra y por eso está el if
(ya que no todas las cadenas traían el símbolo)
A partir del signo de interrogación corté la cadena desde 0 hasta la posición del símbolo, resultando en una cadena cortada con PHP.