<?php
// define class
class Calculator {
//class variables:
var $sum;
var $dif;
var $multi;
var $div;
//Class member functions or methods:
function add($arr) {
$this->sum=array_sum($arr);
}
function substract($arr){
for ($i=0;$i<count($arr);$i++){
$dif=$dif - $arr[$i+1];
$this->dif=dif-arr[$i];
}
}
function multiply($arr) {
$this->multi=$number1 * $number2;
}
function devide($arr) {
$this->div=$number1/$number2;
}
}
$txtfield = $_POST['number1'];
$arr = explode(' ',trim($txtfield));
//Create a class instance:
$calc = new Calculator();
//Call class methods:
$calc->add($arr);
$calc->substract($arr);
$calc->multiply($arr);
$calc->devide($num1,$num2);
//Display output:
echo "Sum=".$calc->sum." <br>";
echo "Difference =".$calc->dif." <br>";
echo "Multilpication=".$calc->multi." <br>";
echo "Division=".$calc->div."<br>";
?>
为什么我的代码没有显示正确的值?我尝试输入3个值仍然不会返回正确的结果。它似乎没有很好地执行操作。真的需要紧急帮助: http://modkoredesigns.com/phpexam/这是测试uRL
我尝试在文本框中输入2 2 2并且它没有显示答案
答案 0 :(得分:2)
首先,您在该行上收到错误:
$this->dif=dif-arr[$i];
你错过了两个$
然后,$number1
和$number2
来自哪里? (同时为multiply()
和devide()
)
答案 1 :(得分:1)
您正在使用函数中的完整错误变量。你在哪里从乘法函数得到$ number1或$ number2? 除了丑陋的格式化,这使得阅读代码成为一种真正的痛苦,代码中存在更严重的缺陷。 当你将它们作为参数提供给每个函数时,为什么要将值存储在类中?