PHP對象多態性簡單圖形計算器高洛峰細說PHP-創新互聯

主程序頁面 test.php頁面

我們提供的服務有:做網站、成都網站建設、微信公眾號開發、網站優化、網站認證、襄州ssl等。為1000+企事業單位解決了網站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術的襄州網站制作公司<!DOCTYPE html> <html> <head>     <title>簡單的圖形計算器</title>     <meta http-equiv = "Content-Type" content = "text/html;charset=utf-8" /> </head> <body>     <center>     <h2>簡單的圖形計算器</h2>     <a href = "test.php?action=rectangle">矩形</a>&nbsp;&nbsp;&nbsp;||&nbsp;&nbsp;&nbsp;     <a href = "test.php?action=triangle">三角形</a>     </center>     <br/><hr>     <?php     //屏蔽E_NOTICE提示     error_reporting(E_ALL & ~E_NOTICE);     //設置自動加載這個程序需要的類文件     function __autoload($classname){         include $classname.'.class.php';     }     //判斷用戶是否單擊一個形狀鏈接     if(!empty($_GET['action'])){         //第一步:創建形狀的對象         $classname = ucfirst($_GET['action']);         $shape = new $classname($_POST);         //第二步:調用形狀的對象中的圖形界面         $shape->view();         //第三步:用戶是否提交了對應的圖形界面的表單         if(isset($_POST['dosubmit'])){             //第四步:查看用戶輸入的數據是否合法,不合法則提示             if($shape->validate($_POST)){             //第五步:計算圖形的面積和周長             echo $shape->name.'的面積為:'.$shape->area().'<br/>';             echo $shape->name.'的周長為:'.$shape->circumference().'<br/>';             }         }             }else{//如果用戶沒有單擊則默認訪問主程序         echo '請選擇一個要計算的圖形';     }     ?> </body> </html>

形狀抽象類Shape.class.php頁面

<?php   //形狀抽象類 abstract class Shape{         public  $name;         //面積         abstract function area();         //周長         abstract function circumference();         //圖形界面         abstract function view();         //形狀驗證方法         abstract function validate($arr);          }

矩形類Rectangle.class.php頁面

<?php  //矩形類 class Rectangle extends Shape{     private $width;     private $height;     function __construct($arr=array()){         if(!empty($arr)){         $this->width   =  $arr['width'];         $this->height  =  $arr['height'];         }         $this->name   =  '矩形';     }      function area(){         return $this->width*$this->height;     }     //周長     function circumference(){         return 2*($this->width+$this->height);     }     //圖形界面   function view(){         $form =  '<form action="test.php?action=rectangle" method="post">';         $form .= $this->name.'的寬:<input type="text" name="width" value="'.$_POST['width'].'" /> <br/>';          $form .= $this->name.'的高:<input type="text" name="height" value="'.$_POST['height'].'" /> <br/>';          $form .= '<input type="submit" name="dosubmit" value="計算" /> <br/>';          $form .= '</form>';         echo $form;     }     //形狀驗證方法      function validate($arr){         $flag = true;         if($arr['width']<0 || !is_numeric($arr['width'])){             echo $this->name.'的寬必須是大于0的整數<br/>';             $flag = false;         }         if($arr['height']<0 || !is_numeric($arr['height'])){             echo $this->name.'的高必須是大于0的整數<br/>';             $flag = false;         }         return $flag;     }      }

三角形類Triangle.class.php頁面

<?php  //三角形類 class Triangle extends Shape{     private $edge1;     private $edge2;     private $edge3;     function __construct($arr=array()){         if(!empty($arr)){         $this->edge1   =  $arr['edge1'];         $this->edge2   =  $arr['edge2'];         $this->edge3   =  $arr['edge3'];                 }         $this->name   =  '三角形';     }      function area(){          $p =($this->edge1+$this->edge2+$this->edge3)/2;                  return sqrt($p*($p-$this->edge1)*($p-$this->edge2)*($p-$this->edge3));     }     //周長     function circumference(){         return ($this->edge1+$this->edge2+$this->edge3);     }     //圖形界面   function view(){         $form =  '<form action="test.php?action=triangle" method="post">';         $form .= $this->name.'的第一個邊:<input type="text" name="edge1" value="'.$_POST['edge1'].'" /> <br/>';          $form .= $this->name.'的第二個邊:<input type="text" name="edge2" value="'.$_POST['edge2'].'" /> <br/>';          $form .= $this->name.'的第三個邊:<input type="text" name="edge3" value="'.$_POST['edge3'].'" /> <br/>';          $form .= '<input type="submit" name="dosubmit" value="計算" /> <br/>';          $form .= '</form>';         echo $form;     }     //形狀驗證方法      function validate($arr){         $flag = true;         if($arr['edge1']<0 || !is_numeric($arr['edge1'])){             echo $this->name.'的第一邊必須是大于0的整數<br/>';             $flag = false;         }         if($arr['edge2']<0 || !is_numeric($arr['edge2'])){             echo $this->name.'的第二邊必須是大于0的整數<br/>';             $flag = false;         }         if($arr['edge3']<0 || !is_numeric($arr['edge3'])){             echo $this->name.'的第三邊必須是大于0的整數<br/>';             $flag = false;         }         if(($arr['edge1']+$arr['edge2']<$arr['edge3']) || ($arr['edge1']+$arr['edge3']<$arr['edge2'])||($arr['edge3']+$arr['edge2']<$arr['edge1']) ){             echo '三角形定義必須兩邊之和大于第三邊<br/>';             $flag = false;         }         return $flag;     }      }

瀏覽器 矩形頁面

PHP 對象  多態性 簡單圖形計算器 高洛峰 細說PHP

瀏覽器 三角形頁面

PHP 對象  多態性 簡單圖形計算器 高洛峰 細說PHP

另外有需要云服務器可以了解下創新互聯cdcxhl.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

新聞標題:PHP對象多態性簡單圖形計算器高洛峰細說PHP-創新互聯
文章源于:http://m.kartarina.com/article16/dicedg.html

成都網站建設公司_創新互聯,為您提供定制網站定制開發搜索引擎優化企業網站制作標簽優化響應式網站

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

綿陽服務器托管
主站蜘蛛池模板: 亚洲av无码专区青青草原| 日韩人妻无码精品系列| 午夜福利无码不卡在线观看 | 无码专区AAAAAA免费视频| 一本一道av中文字幕无码| 人妻无码人妻有码中文字幕| 人禽无码视频在线观看| 亚洲AV无码乱码在线观看富二代 | 亚洲AV日韩AV永久无码绿巨人 | 亚洲日韩精品无码一区二区三区| 中文字幕乱偷无码av先锋蜜桃| 国模吧无码一区二区三区| 无码无需播放器在线观看| 亚洲AV无码欧洲AV无码网站| 好硬~好爽~别进去~动态图, 69式真人无码视频免 | 亚洲最大av资源站无码av网址| 成人免费无码H在线观看不卡 | 无码中文字幕乱码一区| 久久午夜夜伦鲁鲁片无码免费| 国产高清无码二区| 国产成人无码精品一区不卡 | 无码精品人妻一区| 无码人妻精品内射一二三AV| 亚洲综合无码一区二区| 亚洲熟妇无码八AV在线播放| 日韩精品无码免费视频| 无码av专区丝袜专区| av色欲无码人妻中文字幕| 最新中文字幕av无码专区| 熟妇人妻中文字幕无码老熟妇| 久久老子午夜精品无码怎么打| 中文字幕无码视频专区| 熟妇人妻系列aⅴ无码专区友真希| 国产成人无码精品久久久露脸 | 亚洲Av无码乱码在线播放| 国产精品免费看久久久无码| 亚洲成av人片不卡无码久久| 国产精品无码素人福利不卡| 国产亚洲大尺度无码无码专线| 中文字字幕在线中文无码| 亚洲av福利无码无一区二区|