日期:2014-05-17  浏览次数:20461 次

初学者以前从未碰过编程的,写了一个函数关于简单计算的一些疑问
 <?php 
function sum($num1,$act,$num2){
  
  if ($act!='+'&&$act!='-'&&$act!='*'&&$act!='/') {
        echo $res=null;
        exit;
  }elseif ($act='+') {

     $res=$num1+$num2;
   
     
 
  }
  elseif ($act='-') {
         $res= $num1-$num2;
         
  }
  elseif ($act='*') {
       $res=$num1*$num2;
    
  }
  elseif ($act='/') {
  if ($num2==0) {
        echo '0不能做被除数,<br/>';
   } else {
          $res= $num1/$num2;
         
   }        
  }

return $res;
}
echo sum (10,'+',2);
  ?>
为什么只能算加法,而$act赋‘-’‘*’‘/’算出来的结果都是12.请大家指导指出错误,万分感谢

------解决方案--------------------
所有判断的地方
$act='+'
应该是==而不是赋值。
$act == '+'
$act == '-'
$act == '*'
$act == '/'