Php 如何在同一类中定义层次结构
从这个伪代码开始:Php 如何在同一类中定义层次结构,php,Php,从这个伪代码开始: class myClass { public function foo() { // something } public function f1() { return "something one"; } public function f2() { return "something two"; } } 我如何修改此代码以获得如下内容: $myclass
class myClass {
public function foo() {
// something
}
public
function f1() {
return "something one";
}
public
function f2() {
return "something two";
}
}
我如何修改此代码以获得如下内容:
$myclass = new myclass();
echo $myClass->foo()->f1(); // display: something one
echo $myClass->foo()->f2(); // display: something two
有可能吗?我试图找到一些问题,但没有解决。
谢谢。您需要记住的是返回类的
实例
,否则调用下一个方法时,它将返回致命错误
class myclass {
protected $fooVar;
public function foo($string) {
$this->fooVar = $string;
return $this;
}
public function myFunc($string) {
return $this->fooVar . " || " . $string;
}
}
$class = new myClass();
// output:: myString || my new sexy text
echo $class->foo("myString")->myFunc("my new sexy text");
等级制度我想你指的是执行顺序?你应该使用继承。你好,关于你的建议,我已经看过了,但和我的意思不一样。我不想要一个类的扩展,而是想要定义一个层次结构。我已经解决了定义一个函数来实例化从其他类调用的对象的问题,但我想尝试从同一个类中执行它。明白我的意思吗?答案有用吗?