Holladiewaldfee,
(Es wären auch eval()-Konstrukte möglich, allerdings halte ich diese für ein zu hohes Sicherheitsrisiko)
Man könnte es aber schon auf sichere Art und Weise mit eval lösen:
if(strlen($op)==1 && strstr('*+-/%', $op)!==false)
eval('$erg=$bla'.$op.'$blubb');
else
echo 'nixgut!';
Sicher ist eval böse, und sicher ist eval nicht gerade eine schöne Lösung (eval ist nie eine Lösung?!), aber es gibt diese Funktion nunmal, und hier bietet sie sich irgendwie an. Zusammen mit obiger Sicherheitsabfrage sehe ich da kein Problem (bis auf den Stil). Dafür ist die Lösung kompakt und leicht zu erweitern, z.B. um Bitoperatoren oder ähnliches.
Ciao,
Harry