PHP在类中添加两个数字
我试图在PHP类中构建一个函数,但是每当调用该函数时,我只返回第一个变量PHP在类中添加两个数字,php,class,variables,add,Php,Class,Variables,Add,我试图在PHP类中构建一个函数,但是每当调用该函数时,我只返回第一个变量 class Nums { private $a = 7; private $b = 8; public function sum() { return $this->a + $this->b; } public function __set($name,$value) { switch($name) {
class Nums
{
private $a = 7;
private $b = 8;
public function sum()
{
return $this->a + $this->b;
}
public function __set($name,$value) {
switch($name) {
case 'a':
return $this->setA($value);
case 'b':
return $this->setB($value);
}
}
public function __get($name) {
switch($name) {
case 'a':
return $this->getA();
case 'b':
return $this->getB();
}
}
private function setA($i) {
$this->a = $i;
}
private function getA() {
return $this->$a;
}
private function setB($i) {
$this->b = $i;
}
private function getB() {
return $this->$b;
}
}
我在这里做错了什么,因为我真的看不出这个逻辑有什么错
class Nums
{
private $a = 7;
private $b = 8;
public function sum()
{
return $this->a + $this->b;
}
}
$numObj = new Nums();
echo $numObj->sum();
运行此代码会为我返回15个它对我有效。下面是我尝试的结果,它输出了
15
PHP代码:
<?php
class Nums
{
private $a = 7;
private $b = 8;
public function sum()
{
return $this->a + $this->b;
}
}
$obj = new Nums();
$c = $obj->sum();
echo $c;
?>
我觉得这个不错。你是如何使用这个类的?我添加了set和get组件,我用它来修改这个类,我不认为这是个问题。显然是这样。当我调用sum函数时,我试图获取私有变量,而我应该使用swtich语句中定义的名称。是的,有时问题会出现在意外的地方:)
15