首頁 > 後端開發 > php教程 > php學習筆記-簡單計算機腳本 php從入門到精通 php學習網站 php100

php學習筆記-簡單計算機腳本 php從入門到精通 php學習網站 php100

WBOY
發布: 2016-07-29 08:49:06
原創
1571 人瀏覽過

     這次用php實現的內容是:使用者輸入兩個數字,然後選擇加減乘除這四個運算子其中的一個或多個,將計算結果顯示出來。

     我的想法是這樣的:在HTML中建立表單,其中包括:1.選擇框,讓使用者選擇加減乘除運算,選擇的結果保存在operation這個數組中;2.文字框,讓使用者輸入要計算的數字,輸入的結果保存在num這個陣列中;3.提交按鈕,提交表單內容。表單以POST方法直接提交給本php頁面處理,其中$_POST['operation']儲存了運算子信息,$_POST[num']儲存了要參與運算的資料。在php腳本裡判斷運算符,並進行對應計算,將結果儲存到$msg的陣列中,最後將$msg輸出即可。

     好了,直接上碼:

     

<?php $result=array();  //用来保存计算结果的数组
$msg=array();     //保存结果消息的数组
$i=0;             //结果的个数
$error="";        //错误消息
if(isset($_POST[&#39;operation&#39;])){    //如果已经选择了运算符
    if((""!=$_POST[&#39;num&#39;][0])&&""!=($_POST[&#39;num&#39;][1])){   //输入文档框内容部位空
    $num1=(double)$_POST[&#39;num&#39;][0];                       //从字符串强制转换成double型的类型数据
    $num2=(double)$_POST[&#39;num&#39;][1];
    foreach($_POST[&#39;operation&#39;] as $op){                   //读取所选择的运算符
        switch($op){                                       //判断运算符属于哪一类
            case &#39;add&#39;:
               $result[$i]=$num1+$num2;                     //加法
               $msg[$i]="$num1"."+"."$num2"."="."$result[$i]";//将完整的算数式保存到消息数组里面     
               $i++;            
               break;
               
            case &#39;sub&#39;:
               $result[$i]=$num1-$num2;                      //减法
               $msg[$i]="$num1"."-"."$num2"."="."$result[$i]";//将完整的算数式保存到消息数组里面 
               $i++;            
               break;
               
            case &#39;mul&#39;:
               $result[$i]=$num1*$num2;                       //乘法
               $msg[$i]="$num1"."*"."$num2"."="."$result[$i]";//将完整的算数式保存到消息数组里面 
               $i++;            
               break;
               
            case &#39;div&#39;:
               if($_POST[&#39;num&#39;][1]!=0){                       //保证被除数不能为0
               $result[$i]=$num1/$num2;                        //除法
               $msg[$i]="$num1"."/"."$num2"."="."$result[$i]"; //将完整的算数式保存到消息数组里面 
               $i++;
               }
               else $error="被除数不能为0\n" ;                //如果除数为0,错误消息有提示       
               break;
             }
        }
    }
    else {                                                    //输入的数字有为空的情况
        if( ""!=$_POST[&#39;num&#39;][0] )              
            $error.="请输入num 1 \n";                         //记录到错误消息中
        if( ""!=$_POST[&#39;num&#39;][1] )
            $error.="请输入num 2 \n"; 
         
        }
}

?>


登入後複製



请选择运算符:



"; echo "计算结果如下:"."
"; foreach($msg as $str) echo $str."
"; echo $error; } ?>

運作介面如下:

php學習筆記-簡單計算機腳本 php從入門到精通 php學習網站 php100

,5

    評估與改進:

    經過測試,發現丟存在一些缺陷,比如說:每次輸入完數據,提交之後,計算結果是顯示出來了,可是頁面也被更新了,原先輸入的數據就沒有了。改進之後的結果應該是這樣的:每次提交之後,文字方塊都保存著上次的記錄,複選框不保存。具體的實現呢,就是在文字框設定屬性,這個我不是特別熟,現在也懶得弄它,就先擱一擱吧。 php學習筆記-簡單計算機腳本 php從入門到精通 php學習網站 php100
    至於程式碼的話,php腳本裡面用的變數比較多,而消耗記憶體也對應較大,所以像$result[],$num1,$num2這些變數不被另外腳本呼叫的話,可以省去;但是為了更好的擴充性,增加功能時不用大幅改變原來程式碼,留著比較好。

     有興趣的讀者可以到http://www.beartracker.top/server1.php去測試,歡迎指正哦^_^

以上就介紹了php學習筆記-簡單計算機腳本,包含了php學習的內容,希望對PHP教學有興趣的朋友有幫助。

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板