php中eval

 eval("\$str = $num1 $operate $num2;");

注:1. eval()中必须使用双引号

       2. 函数中必须加英文状态下的分号

<!DOCTYPE html>
<html>
<head>
     <meta charset='utf-8'>
    <title>
    </title>
</head>
<body>
  <form action="" method="get" accept-charset="utf-8">
    <input type="text" name="num1" value="" placeholder="">
    <select name="operate" >
        <option value="+">加</option>
        <option value="-">减</option>
        <option value="*">乘</option>
        <option value="/">除</option>
    </select>
    <input type="text" name='num2'>
    <input type="submit" value="提交">
  </form>
<?php
  if(!empty($_GET['num1'])&&!empty($_GET['num2'])&&!empty($_GET['operate'])){
     // switch ($_GET['operate']) {
     //     case "+":
     //         $str=$_GET['num1']+$_GET['num2'];
     //         break;
     //     case "-":
     //         $str=$_GET['num1']-$_GET['num2'];
     //         break;
     //    case '*':
     //         $str=$_GET['num1']*$_GET['num2'];
     //         break;
     //    case "/":
     //         $str=$_GET['num1']/$_GET['num2'];
     //         break;
     //     default:
     //         $str='输入的数不合法!';
     //         break;
     // }
     // $str=eval("$_GET['num1'] $_GET['operate'] $_GET['num2']");
    $a=$_GET['num1'];
    $b=$_GET['operate'];
    $c=$_GET['num2'];

    eval("\$str = $a $b $c;");
    echo "{$_GET['num1']} {$_GET['operate']} {$_GET['num2']} = ". $str;
  }else{
    echo "请输入要计算的数和计算方式!";
  }
?>
</body>
</html>

猜你喜欢

转载自blog.csdn.net/Lyj1010/article/details/82630058