Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: lucaslopez0000 en 2 Mayo 2013, 17:16 pm



Título: Cortar string por palabra numero X
Publicado por: lucaslopez0000 en 2 Mayo 2013, 17:16 pm
Hola a todos , llevo algun tiempo programando en PHP , aunque no soy tan profesional como la gente de este subforo. Lo que me gustaria saber es si existe una funcion que corte un string en la palabra que le indiques. PE : Con el texto 'linux es mejor que windows' , una funcion que recorte por la tercera palabra , quedando 'linux es mejor'.
¿ Existe tal funcion debo implementarla yo mismo ?


Título: Re: Cortar string por palabra numero X
Publicado por: #!drvy en 2 Mayo 2013, 19:48 pm
Si consideramos que cada espacio, es una nueva palabra, lo puedes hacer con explode() y array_slice.

Código
  1. <?php
  2. $string = 'linux es mejor que windows';
  3.  
  4. function separar($string=NULL,$sep=NULL){
  5.   // Si string esta vacio o el integro de $sep es menor a 1 devolver false.
  6.   if(empty($string) || (int)$sep<1){return false;}
  7.   // Separar cada espacio y meterlo en array, luego con array_slice,
  8.   // quitar todos los items que esten despues del index indicado.
  9.   $as = array_slice(explode(' ',$string),0,(int)$sep);
  10.   // volver a juntar el array y retornar.
  11.   return implode(' ',$as);
  12. }
  13.  
  14. echo separar($string,3);
  15. // linux es mejor
  16.  
  17. ?>

Saludos