(PHP 4, PHP 5, PHP 7, PHP 8)
stristr — Versión insensible a mayúsculas y minúsculas de strstr()
Devuelve una subcadena de haystack,
desde la primera ocurrencia de needle
(incluida) hasta el final de la cadena.
haystackLa cadena en la que se debe buscar.
needleLa cadena a buscar.
Anterior a PHP 8.0.0, si needle no es una cadena de caracteres,
se convierte en un entero y se aplica como valor ordinal de un carácter.
Este comportamiento está obsoleto a partir de PHP 7.3.0, y confiar en él
está fuertemente desaconsejado. Dependiendo del comportamiento esperado,
needle debe ser explícitamente convertido a una cadena de caracteres,
o debe realizarse una llamada explícita a chr().
before_needle
Si es true, stristr()
devuelve la parte de haystack antes de la primera
ocurrencia de needle (needle
excluida).
needle y haystack
se tratan sin tener en cuenta mayúsculas y minúsculas.
Devuelve la parte correspondiente de la cadena. Si
needle no se encuentra, la función
devuelve false.
| Versión | Descripción |
|---|---|
| 8.2.0 | El case folding ya no depende de la configuración local definida con setlocale(). Solo se realizará el case folding ASCII. Los octetos no-ASCII serán comparados por su valor de octeto. |
| 8.0.0 |
needle acepta ahora una cadena vacía.
|
| 8.0.0 |
Pasar un entero como needle ya no está soportado.
|
| 7.3.0 |
Pasar un entero como before_needle se ha
marcado como obsoleto.
|
Ejemplo #1 Ejemplo con stristr()
<?php
$email = 'USER@EXAMPLE.com';
echo stristr($email, 'e'), PHP_EOL; // muestra ER@EXAMPLE.com
echo stristr($email, 'e', true), PHP_EOL; // muestra US
?>
Ejemplo #2 Comprueba si una cadena es encontrada o no
<?php
$string = 'Hello World!';
if (stristr($string, 'earth') === FALSE) {
echo '"terre" no encontrado en la cadena';
}
// muestra: "terre" no encontrado en la cadena
?>Nota: Esta función maneja strings binarios.