Как обойти проблему деления на 0 при выполнении произвольной арифметической функции?
А как насчет перехвата исключения и в блоке catch определять тип "Division by zero" и возвращать 0.
 с помощью функции eval() 
Говнокод. Забудьте про эту функцию.например, "1 - $a / $b",if ($b != 0) ...