simple:
Código PHP:
$array=array('a' => '1', 'b' => '2');
// primero, $array es un array (y aqui, lo usas como string)
// por lo cual el resultado no seria IN( 1,2 ) sino ... IN( Array )
// para "pegar" los valores debes usar join()
// .. si dudas, imprime $p
$p="SELECT * from blah WHERE id IN ( ".$array." )";
// del mismo modo, explode() trabaja con cadenas...
// y tu estas usando un array!!!
// .. esto te daria un error del interprete
$kk=explode(",",$array);
despues de esto, todo esta bien... tu planteamiento es correcto!!
la optimización es evidente:
-
una consulta que arroja
N resultados
VS
-
N consultas que arrojen
un resultado
¿te parece??