Ver Mensaje Individual
  #2 (permalink)  
Antiguo 16/09/2014, 04:15
quimfv
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Recorrer arreglos es muy lento

Para arrays unidimensionales http://php.net/manual/es/function.in-array.php

Para multidimensionales

Código PHP:
Ver original
  1. function in_multiarray($elem, $array,$field)
  2. {
  3.     $top = sizeof($array) - 1;
  4.     $bottom = 0;
  5.     while($bottom <= $top)
  6.     {
  7.         if($array[$bottom][$field] == $elem)
  8.             return true;
  9.         else
  10.             if(is_array($array[$bottom][$field]))
  11.                 if(in_multiarray($elem, ($array[$bottom][$field])))
  12.                     return true;
  13.  
  14.         $bottom++;
  15.     }        
  16.     return false;
  17. }

Igual va mas rápido, pero esos 130.000 registros no los tienes en una tabla de una base de datos, si es el caso porque no usas el servidor de bases de datos para hacer esa comprobación he inserción.....

Creo que ganarias aun que tengas que crear una tabla temporal....
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.