ホームページ >バックエンド開発 >PHPチュートリアル >PHPクラス参照の問題
クラス計算{
var $var1=10;
関数 add(){
return $this->var1+$this->
}
関数subtract( ){
return $this->var1-$this->var2;
}
関数 multiplication(){
return $this->var1*$this->var2;
}
}
クラス A{
function ex(){
return Calculate::add();
}
}
echo $a->ex();
0 が返されるのはなぜですか?
ディスカッションに返信(解決策)
function ex(){
$ t = new Calculate;
return $t->add();
}
これは 12 を返します
モデレータが提案したように、これを行うこともできます
static $var1=10;静的 $var2= 2;
return self::$var1+self::$var2; }
}
クラス A{
function ex(){
return Calculate::add();
}
} E $ a = new a;
echo $ a-& gt;
または、メソッドと属性を static として定義するために使用できます。
static public $var2 = 2;
public static function add(){
return self::$var1 + self::$var2;
}
}
public static function multiplication(){
return self::$var1 * self::$var2;
}
}
class A{
function ex(){
return Calculate::add(