Moje doporučení:

Kdyz pouzivas funkci eval(), tak ji nikdy nepouzivej takto:
Kód:
eval("\$a = $b(\$c)");
Garantuju, že vždycky uděláš chybu a budeš ji dlouho hledat. Způsob, jak si v tom udělat jasno, je tento:
Kód:
$p = "\$a = $b(\$c)";
//echo $p
eval($p);
Kdyz to nepůjde, tak si povolíš příkaz echo, který ti vypíše na obrazovku, co vlastně tomu evalu předhazuješ. To, co ti vypíše na obrazovku, to přesně se snaží php vykonat. V tomto případě by ti třeba psal parse error, a to proto, že tam neni středník na konci. To, co se ti tim příkazem echo vypíše, přesně to se snaží php provést a je to, jako kdyby ten vypsanej příkaz byl v php kódu přímo napsaný.