在具有以下条件的类之间传递变量的最佳方法是什么:
所以
Class.php
Class 1{
public $x
function setx(){
$this-> x = 20
}
}
Class2.php
Class_2{
#get value of $x in this class
}
答案 0 :(得分:0)
在class1中创建一个get方法,并在类2中调用它:
Class.php
Class 1{
public $x
function setx(){
$this-> x = 20
}
function getx() {
return $this->x;
}
}
Class 2.php
Class_2{
function someMethod() {
Class_1 c = new Class_1();
c.getx();
}
}
答案 1 :(得分:0)
包括class2并使用扩展名
class Class2 extends Class1 {
public function z(){
print $x;
}
}
答案 2 :(得分:0)
X
的实例可以执行有用的工作,而类Y
的实例想要驱动它们,则应该这样做。注意没有getter或setter,Shelf->stuff
在没有Book
实例的情况下是可测试的。
class Shelf
{
function stuff($thickness)
{
if ($this->spaceLeft < $thickness)
throw new ShelfOverflow;
$this->spaceLeft -= $thickness;
}
}
class Book
{
function shelve(Shelf $s)
{
$s->stuff($this->thickness);
}
}