在对象上调用多个方法?
我试着在一个对象上调用多个函数。但我认为我的语法失败了。你能纠正我吗?在对象上调用多个方法?
$objMetaDaten->setStrTitle('test') ->setStrBeschreibung('test')
->setStrUeberschrift('test')
->setStrCanonical('test')
->setStrRobots(MetaDaten::INDEX);
回答:
你需要的是一种叫做流畅制定者将调用对象的setter方法作为对传统空隙后返回对象setter方法类似下面
Class A{ private $name;
private $id;
public function setName($name) {
$this–>name = $name;
return $this;
}
public function getName() {
return $this–>name;
}
public function setId($id) {
$this–>id = $id;
return $this;
}
public function getId() {
return $this–>id;
}
}
所以,你可以然后说
$test = new A(); $test->setId(1)->setName('Fredrick');
回答:
我认为你看起来像这样,这是一个非常基本的方法。
class Test{ function test(){
return 'Hi!';
}
}
class Test2{
function test_2(){
return new Test();
}
}
class Test3{
function test_3(){
return new Test2();
}
}
$obj = new Test3();
echo $obj->test_3()->test_2()->test();
或者,你可以在一个类中做到这一点喜欢 -
class Test{ private $num;
function test(){
return 'Hi! your number is: '.$this->num;
}
function test_2($mul){
$this->num *= $mul;
return $this;
}
function test_3($add){
$this->num = $add;
return $this;
}
}
$obj = new Test();
echo $obj->test_3(50)->test_2(2)->test();
以上是 在对象上调用多个方法? 的全部内容, 来源链接: utcz.com/qa/261745.html