tem um caso que funciona, onde, ao gravar algo em seu bd, faça o seguinte.
Gravando em banco
$minhaArray = array("x","y"=>"z"); //exemplo com uma array mista
......(insira o código de conexão com o banco aqui)
$sql = "INSERT INTO `tabela` (`campo`) VALUES ('".(array) $minhaArray."')"; // aqui você entrega a sua variável $minhaArray completa ao comando sql
.....(código para terminar a gravação em bd aqui)
Selecionando a array
......(código de conexão ao banco)
$minhaArrayEmBanco =& (array) row['campo'];
......(finaliza conexão)
eu uso isto em sessões, sem precisar de serialize/unserialize, bem mais prático e rápido.