我正在尝试了解类定义的基础知识并使用计算
这是代码
<?php
class calculator {
var $number1 = 4;
var $number2 = 5;
function add ($a,$b){
$c = $a + $b;
print ("the sum of your numbers: $c");
print ($c);
}
}
$cal = new calculator;
$cal->add($number1,$number2);
?>
我的浏览器中显示的是:
您的数字总和:0
为什么不是9?
最佳答案
您传入的$number1
和$number2
的值是什么? $number1
和$number2
与$cal->number1
和$cal->number2
不同。
您要定义一个对象的两个属性,并将两个不同的,独立的变量传递给该类的函数。基本上,您有两对数字-对象中的一对数字,其值为4和5,而函数外部的一对数字则没有值(均为0),然后将它们相加。
您可以尝试以下方法:
<?php
class calculator {
private $number1 = 4;
private $number2 = 5;
function add ($a, $b){
$c = $this->$a + $this->$b;
print ("the sum of your numbers: $c");
print ($c);
}
}
$cal = new calculator;
$cal->add('number1', 'number2');
或这个:
<?php
class calculator {
private $number1 = 4;
private $number2 = 5;
function add (){
$c = $this->number1 + $this->number2;
print ("the sum of your numbers: $c");
print ($c);
}
}
$cal = new calculator;
$cal->add();
或这个:
<?php
class calculator {
function add ($a, $b){
$c = $a + $b;
print ("the sum of your numbers: $c");
print ($c);
}
}
$cal = new calculator;
$cal->add(4, 5);
关于php - 不需要计算输出,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5325536/