What are best practices for handling mathematical calculations with PHP, especially when using dynamic operators?

When handling mathematical calculations with dynamic operators in PHP, it is important to validate and sanitize user input to prevent security vulnerabilities like code injection. One approach is to use a switch statement to determine the operator based on user input and perform the calculation accordingly. Additionally, using functions like `filter_var` can help ensure that the input is safe for calculation.

$input1 = $_POST['input1'];
$input2 = $_POST['input2'];
$operator = $_POST['operator'];

if(is_numeric($input1) && is_numeric($input2)){
    switch($operator){
        case '+':
            $result = $input1 + $input2;
            break;
        case '-':
            $result = $input1 - $input2;
            break;
        case '*':
            $result = $input1 * $input2;
            break;
        case '/':
            if($input2 != 0){
                $result = $input1 / $input2;
            } else {
                $result = "Cannot divide by zero";
            }
            break;
        default:
            $result = "Invalid operator";
    }
    echo "Result: " . $result;
} else {
    echo "Invalid input";
}