0 ) $f = array_pop( $st ); else print( "Buffer underrun!
" ); return $f; } $s = trim( $_GET['s'] ); $ar = explode( " ", $s ); foreach( $ar as $tok ) { if ( isFloat( $tok ) ) $st[] = floatval( $tok ); else { $f2 = pop(); $f1 = pop(); $op = $tok[0]; switch( $op ) { case '+': $st[] = $f1 + $f2; break; case '-': $st[] = $f1 - $f2; break; case '*': $st[] = $f1 * $f2; break; case '/': $st[] = $f1 / $f2; break; default: printf( "Unknown operator '%s'!
", $op ); break; } } } if ( count( $st ) > 0 ) printf( "Result: %f", pop() ); ?>