Ver Mensaje Individual
  #7 (permalink)  
Antiguo 02/11/2007, 06:45
Avatar de Seppo
Seppo
 
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 21 años, 7 meses
Puntos: 17
Re: Encontrar coincidencias en una cadena

Cita:
Iniciado por Italico76 Ver Mensaje
strpos busca solo caracteres, no sub-substrigs y no devuelve VERDADERO sino FALSO o la POSICION
Italico76, strpos busca substrings, no necesariamente caracteres... y la verdad q fallé en el ejemplo, tnedría q haber puesto "if (strpos($texto, $cadena) !== false) echo $cadena;" por si aparece al principio de $texto.

En general, es preferible usar esta función a cualquier preg o ereg porque es bastante más liviano... Probá el siguiente código

Código PHP:
<?php
$texto 
= 'Lorem ipsum at dolor...';
$cadena = 'ipsum';

$start = microtime(true);
for (
$a = 0; ++$a <= 10000;)
stripos($texto, $cadena) !== false;
echo 
'Usando strpos: ' , microtime(true) - $start;

echo 
"\n";

$start = microtime(true);
for (
$a = 0; ++$a <= 10000;)
{
$buscado = "/".$cadena."/i";
preg_match($buscado, $texto);
}
echo 
'Usando preg_match: ', microtime(true) - $start;
?>
A mí me da más del doble de tiempo usando preg.
Y el problema principal sería si la cadena q se está buscando tiene una /, un . o cualquier caracter especial