@$input=$term; // formularinhalt übernehmen $temp="null"; $temp2=0; $operator=""; $operation=false; $fehler=false; $divByZero=false; $arr = explode(" ", $input); //string in array konvertieren mit " " als pattern if (@$send=="berechnen") { foreach ($arr as $part) //das array durchlaufen { if ((ereg("[*+-/]",$part)) && $temp !="null") // wenn rechen-operator { $operator=$part; $operation=true; } elseif ((!ereg("[*+-/]",$part)) && $temp !="null" && $operation=true) // wenn kein operator & schon vorgängerwert vorhanden & operator vorhanden { switch($operator) // rechenoperation ausführen { case "*": $temp= (int)$temp * (int)$part; $operation=false; break; case "+": $temp= (int)$temp + (int)$part; $operation=false; break; case "-": $temp= (int)$temp - (int)$part; $operation=false; break; case "/": if($part=="0") { echo"Fehler! Div. by 0"; $divByZero=true; $temp=""; $arr=null; break; } $temp= (int)$temp / (int)$part; $operation=false; break; } } else { $temp=$part; } } // end foreach } // end if if (!$divByZero && @$send=="berechnen") { echo "Aufgabe: $input
Ergebnis: $temp"; // ergebnis ausgeben }