よく考えたらreturn array($a, 〜)も30個並べるんだよなw
return array($a,$b,$c,$d,$e,$f,$g,$h,$i,$j,$k,$l,$m,$n,$o,$p,$q,$r,$s,$t,$u,$v,$w,$y,$x,$z,$a1,$a2,$a3,$a4);

これ↓はダメなの?(エラー?)
function hoge(){
$hash["a"] = $_POST["a"];
$hash["b"] = $_POST["b"];
(中略)
$hash["a4"] = $_POST["a4"];
return $hash;
}