私は2つの古いextbase拡張AとBを2つ持っています。Ext BはAのPerson ModelとControllerを拡張し、showActionを上書きします。拡張モデルの名前は "Personcc"で、オリジナルモデルの名前は "Person"です。 showActionがPHP7で異なる宣言でメソッドが上書きされる
//show action in Controller of EXT A
public function showAction(Vendor\Ext\Domain\Model\Person = $person) {
...
}
//show action of extending controller:
public function showAction(Vendor\Ext\Domain\Model\Personcc = $person) {
...
}
のように見える今、私は彼らがPHP7と協力を得るために拡張を更新する必要があります。 PHP5では、このように動作しますが、PHP 7では動作しません。エラーは、宣言が "互換性がある"ことです。 Ext Bを完全に再構築する以外に何ができますか? PHP7と言う方法はありますか?「これを受け入れてください」?
(例のコードは少し抽象的ですが、問題は明確にする必要があり、それは全体の拡張を介して行く。これを克服するのは良いアイデアがなければ、私は拡張子が完全に再加工することが必要だと思います。)
参照:http://stackoverflow.com/questions/36079651/silence-declaration-should-be-compatible-warnings-in-php-7 –