本文的重点就是如何创建一个PHP类来实现两个数间的加减乘除,这种类似于极简单的计算器功能。
实现起来是非常简单的,继续往下看:
这里简单给大家介绍一下构造函数和private和public的定义:
构造函数是一种特殊的方法,主要就是用来在创建对象时初始化对象, 也就是为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。
private是私有的意思,该关键词表示私有的类成员,即只能被其定义所在的类访问。如上述例子中,我们声明了一个声明一个私有的方法。
public是公有的意思:公有的类成员可以在任何地方被访问。
实例
首先打开PHP编辑器,创建一个PHP示例文件
class MyCalculator { private $_fval, $_sval; public function __construct( $fval, $sval ) { $this->_fval = $fval; $this->_sval = $sval; } public function add() { return $this->_fval + $this->_sval; } public function subtract() { return $this->_fval - $this->_sval; } public function multiply() { return $this->_fval * $this->_sval; } public function divide() { return $this->_fval / $this->_sval; } } $mycalc = new MyCalculator(12, 6); echo \"相加等于\".$mycalc-> add().\" \"; // 显示18 echo \"相乘等于\".$mycalc-> multiply().\" \"; // 显示72 echo \"相减等于\".$mycalc-> subtract().\" \"; // 显示6 echo \"相除等于\".$mycalc-> divide().\" \"; // 显示 2
实例扩展:
<?php header(\"content-type:text/html;charset=utf-8\"); session_start(); ?> <!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\"> <html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"zh-CN\" dir=\"ltr\"> <head> <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"/> <title>简单计算机</title> </head> <body> <form action=\"jisuan.php\" method=\"post\"> 第一个数<input type=\"text\" value=\"\" name=\"num1\"><br /> 计算符号<select name=\"oper\"> <option value=\"+\">+</option> <option value=\"-\">-</option> <option value=\"*\">*</option> <option value=\"/\">/</option> </select><br /> 第二个数<input type=\"text\" value=\"\" name=\"num2\"><br /> <input type=\"submit\" value=\"计算结果\"><br /> </form> </body> </html> <?php $num1=$_POST[\'num1\']; $num2=$_POST[\'num2\']; $oper=$_POST[\'oper\']; $rs=0; switch($oper){ case \"+\": $rs=$num1+$num2; break; case \"-\": $rs=$num1-$num2; break; case \"*\": $rs=$num1*$num2; break; case \"/\": $rs=$num1/$num2; break; default: echo \"您输入的不正确\"; } $_SESSION[\'rs\']=$rs; echo \'计算结果为:\'.$_SESSION[\'rs\']; ?>
© 版权声明
THE END
暂无评论内容