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: 19 años, 1 mes
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