(PHP 4, PHP 5, PHP 7)
strpos — Encuentra la posición de la primera ocurrencia de un substring en un string
Encuentra la posición numérica de la primera ocurrencia del
needle (aguja) en el string haystack (pajar).
haystackEl string en donde buscar.
needle
Si la needle no es una cadena, es convertida a
integer y se interpreta como el valor ordinal de un carácter.
offsetSi se específica, la búsqueda iniciará en éste número de caracteres contados desde el inicio del string. A diferencia de strrpos() y strripos(), el offset no puede ser negativo.
Devuelve la posición donde la aguja existe, en relación al inicio del
string haystack (independiente del offset).
También tener en cuenta que las posiciones de inicio de los string empiezan en 0 y no 1.
Devuelve FALSE si no fue encontrada la aguja.
Esta función puede
devolver el valor booleano FALSE, pero también puede devolver un valor no booleano que se
evalúa como FALSE. Por favor lea la sección sobre Booleanos para más
información. Use el operador
=== para comprobar el valor devuelto por esta
función.
Ejemplo #1 Usando ===
<?php
$mystring = 'abc';
$findme = 'a';
$pos = strpos($mystring, $findme);
// Nótese el uso de ===. Puesto que == simple no funcionará como se espera
// porque la posición de 'a' está en el 1° (primer) caracter.
if ($pos === false) {
echo "La cadena '$findme' no fue encontrada en la cadena '$mystring'";
} else {
echo "La cadena '$findme' fue encontrada en la cadena '$mystring'";
echo " y existe en la posición $pos";
}
?>
Ejemplo #2 Usando !==
<?php
$mystring = 'abc';
$findme = 'a';
$pos = strpos($mystring, $findme);
// El operador !== también puede ser usado. Puesto que != no funcionará como se espera
// porque la posición de 'a' es 0. La declaración (0 != false) se evalúa a
// false.
if ($pos !== false) {
echo "La cadena '$findme' fue encontrada en la cadena '$mystring'";
echo " y existe en la posición $pos";
} else {
echo "La cadena '$findme' no fue encontrada en la cadena '$mystring'";
}
?>
Ejemplo #3 Uso de offset
<?php
// Se puede buscar por el caracter, ignorando cualquier cosa antes del offset
$newstring = 'abcdef abcdef';
$pos = strpos($newstring, 'a', 1); // $pos = 7, no 0
?>
Nota: Esta función es segura binariamente.