--- A.php ----
require_once 'B.php';
class A
{
public function __constructor($x){...}
public function foo()
{
$b = B::getInstance();
...
}
}
--- B.php ----
require_once 'A.php';
class B extends A
{
protected static $_instance = null;
protected function __construct(){}
public static function getInstance()
{....}
}
PHPだけで、すぐにそれはラインコンストラクタをprotectedまたはprivateとして定義することはできません!どうして?
protected function __construct(){}
に達する前と後でブラウザに送信されていたであろう、何もすべてを出力としてコードを解釈停止します。
とすぐ、私はちょうどすべてが正常に動作し
// protected function __construct(){}
にそれを変更することで、アウトその行を取るよう!?
私はそれを知りません。
アイデア?
あなたが例えばファイル、でPHPの開始タグを持っていますか彼らは '<?php'で始まりますか? CLIから 'php -l A.php'と' php -l B.php'を実行して、解析エラーがあるかどうか確認できますか? – Gordon
__construct()メソッドは、クラスのインスタンスが作成されるときにpublic(public)にアクセスする必要があります(public)。 –
あなたの擬似コードには明らかな問題がないので、実際のコードで問題が発生する可能性が最も高いです。 PHPの実行が停止してエラーメッセージが表示されない場合は、おそらく完全なエラー報告を有効にする必要があります。方法がわからない場合は、お気軽に詳細をお尋ねください。 –