Traductor

Manejo Básico de Cadenas

Función strstr() y strpos() en PHP

A menudo es necesario determinar si una cadena contiene una determinada subcadena.
Para esto contamos con la función strstr(), la cual recibe dos argumentos separados por una coma.
  • El primero es la cadena en la que hay que buscar.
  • El segundo es la subcadena que deseamos encontrar
Veamos el siguiente script para ver como funciona.
<?php
      $cadena="Esta es la cadena en la que se buscará una subcadena.";
      echo ("La cadena es: $cadena<br>");
      $subcadena="la cadena";
      echo ("La subcadena a buscar es: $subcadena<br>");
      if (strstr ($cadena,$subcadena)){
            echo ("La subcadena SI existe dentro de la cadena.<br>");
      } else {
            echo ("La subcadena NO existe dentro de la cadena.<br>");
}
?>
Al ejecutar el script, la función strstr() determina que la subcadena está dentro de la cadena. Sin embargo no nos dice en que posición, y esto es algo que a menudo vamos a necesitar saber.
Para ello contamos con la función strpos().
Con la misma sintaxis que la anterior, nos devuelve el punto donde la subcadena se encuentra en la cadena.
A este efecto, recuerde que los caracteres de una cadena se empiezan a contar por la izquierda y por el cero, e modo que el primer caracter es el 0, el segundo el 1, y así sucesivamente.
Observe el siguiente script para ver como funciona:
<?php
     $cadena="Esta es la cadena en la que se buscará una subcadena.";
     echo ("La cadena es: $cadena<br>");
     $subcadena="la cadena";
     echo ("La subcadena a buscar es: $subcadena<br>");
     $posicion=strpos ($cadena, $subcadena);
     if ($posicion) {
          echo ("La subcadena se inicia dentro de la cadena en la posición: $posicion.<br>");
     } else {
          echo ("La subcadena no forma parte de la cadena.<br>");
     }
?>
Observe la sintaxis de la función resaltada con rojo, es exactamente igual que la de strstr().
En la siguiente linea resaltada con negritas, fijese en la forma que hemos usado el condicional.

  • Esto es así, ya que si la subcadena existe dentro de la cadena, strpos() nos devuelve su posición, pero si no existe, devuelve un valor lógico false, que indica que no existe la subcadena dentro de la cadena.
Este manejo de variables nos será muy útil cuando deseemos determinar mediante un condicional si se ha obtenido un resultado o no.

Recuerden Comentar Compartir y Darle 

Hasta la Próxima

Si te hemos ayudado : )
Te agradeceríamos que apoyaras este proyecto

0 comentarios:

Publicar un comentario