PHP: Comprobar si cadena contiene subcadena

En este post vamos a ver cómo saber si una cadena tiene dentro otra cadena, es decir, si una cadena contiene una subcadena.

Por ejemplo, la cadena “hola” contiene la letra “l”, al igual que “hola mundo” contiene “mundo”.

Veremos cómo comprobar si una cadena contiene otra usando PHP y strpos.

La función strpos

Esta función trabaja como indexOf en JavaScript, devuelve el índice o posición de una cadena o carácter en otra cadena, como se vio en otro post.

Aprovechando el funcionamiento de strpos podemos comprobar si el mismo devuelve false, y en caso de que así sea, se dice que la cadena no contiene la subcadena.

Comprobar si cadena contiene subcadena en PHP

Pero basta de charlas, veamos el código. He escrito una función que encierra todo esto y queda de la siguiente manera:

#<?php
/*
	Saber si cadena contiene una subcadena usando php

	Recomendado: https://parzibyte.me/blog/2017/12/25/indice-posicion-caracter-cadena-php/
*/

function cadena_contiene_subcadena($cadena, $subcadena){
	return strpos($cadena, $subcadena) !== false;
}
# Probar
var_dump(cadena_contiene_subcadena("Hola", "o")); # true
var_dump(cadena_contiene_subcadena("Hola mundo", "mundo")); # true
var_dump(cadena_contiene_subcadena("Parzibyte", "hola")); # false
var_dump(cadena_contiene_subcadena("Ejemplo", "no")); # true
var_dump(cadena_contiene_subcadena("1234", "1")); # true
var_dump(cadena_contiene_subcadena("Hola, me llamo Luis", ",")); # true
var_dump(cadena_contiene_subcadena("con espacios", " ")); # true

La función de PHP devuelve un booleano indicando si la subcadena se encuentra dentro de la cadena; en el mismo código se demuestra su uso.

Cabe mencionar que esto es sensible a mayúsculas y minúsculas, por lo que si se quiere comprobar de manera insensible se tendrían que convertir ambas cadenas a la misma notación.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *