Yo tuve esa duda hace poco y he encontrado una forma de hacerlo. No es la más indicada pero... ¡¡Funciona!! Por lo visto hay que serializar el array en la página de donde lo quieres enviar y en la de destino deserializarla. Bueno ahi va el script:
enviar_array.php (o lo que quieras)
Código PHP:
<?
function array_envia($array) {
$tmp = serialize($array);
$tmp = urlencode($tmp);
return $tmp;
}
$array=array("algo","nose","otracosa");
$array=array_envia($array);
// Usando un link (URL).
echo "<a href=\"recibir_array.php?array=$array\">pasar array</a>";
?>
recibir_array.php (recuerda que si quieres cambiar el nombre de esta tendrás que cambiarlo también en la url)
Código PHP:
<?
function array_recibe($url_array) {
$tmp = stripslashes($url_array);
$tmp = urldecode($tmp);
$tmp = unserialize($tmp);
return $tmp;
}
$array=$_GET['array'];
// el método de envio usado. (en el ejemplo un link genera un GET. En el formulario se usa POST podria ser GET tambien ...)
$array=array_recibe($array);
foreach ($array as $indice => $valor){
echo $indice." = ".$valor."<br>";
}
?>
Espero que te sirva!
Hasta otra!!!!