2つのクラスが抽象クラスを継承しています。どちらのクラスも、他のクラスの項目の配列である "content"というプライベートメソッドを持っています。 私はここで、アイテムオブジェクトB. から親オブジェクトAを取得する必要があり、クラスAIの「コンテンツ」配列にオブジェクトBを追加した後は一例であり、それはそれを見て簡単です:オブジェクト配列から上位オブジェクトを取得するアイテム
<?php
abstract class heroes {
private $tag;
private $content = array();
function __construct($tag) {
$this->tag = $tag;
}
public function getContents() {
return $this->content;
}
protected function addContent($obj) {
$this->content[] = $obj;
return $obj;
}
}
final class batman extends heroes {
public function addPartner() {
return $this->addContent(new robin());
}
}
final class robin extends heroes {
private $capes;
public function dieAtFirstFight() {
return BATMAN OBJ???
}
}
$batman = new batman();
$batman = $batman->addPartner()->dieAtFirstFight();
?>
抽象クラスで、$ self(バットマンオブジェクト)を設定するパートナーを追加するたびに、$ fatherというプライベートメソッドを追加しようとしましたが、PHPエラーログに "Object of classバットマンを文字列に変換できませんでした。 "
なし? – Vini