代码示例是我正在处理的一个简单示例。我在 php 中有 2 个类。
class Wrap {
public function wrapA($arg){
return 'A'.$arg.'A';
}
public function wrapB($arg){
return 'B'.$arg.'B';
}
}
class Child extends Wrap {
public $OUT;
public function wrapA($arg){
$this->OUT .= parent::wrapA($arg);
}
public function wrapB($arg){
$this->OUT .= parent::wrapB($arg);
}
public function __destruct(){
echo $this->OUT;
}
}
$X = new Child();
$X->wrapA(
$X->wrapB('CC')
);
这里的输出是“ BCCBAA ”。但我试图实现的是“ ABCCBA ”。“Wrap”类必须是这种形式。
…如果我有以下方法调用:
$X->wrapB( $X->wrapA('1') );
$X->wrapA( $X->wrapB('aa') .$X->wrapA('bbb') .$X->wrapB( $X->wrapA('cccc') ) );
…我想要以下输出:BA1ABABaaBAbbbABAcccABA
还有其他方法吗?
我还希望 Wrap-Class 单独工作(没有 Child)……这就是方法具有返回值的原因。
但是在 Child-Class 中,我想将返回值写在一个变量中。
提前谢谢!