我有一个关于
PHP类的简单问题.
多次我见过其他类框架等使用方法调用.
$post->data->text();
我喜欢这个功能,而不仅仅是做这样的事情.
$post->dataReturnAsText();
但我不太确定他们是如何创建这个功能的,或许有一个“子方法”?希望有人能指出我正确的方向……
最佳答案 您提供的示例没有什么特别之处:
<?php
class Post{
public $data;
}
class Data{
public function text(){
}
}
$post = new Post;
$post->data = new Data;
$post->data->text();
但是,您可能已经在方法链接的上下文中找到它(在JavaScript库中非常流行):
<?php
class Foo{
public function doThis(){
return $this;
}
public function doThat(){
return $this;
}
}
$foo = new Foo;
$foo->doThis()->doThat()->doThis();