我有兩個較老的extbase擴展A和B.Exe B擴展了A的Person模型和控制器並覆蓋了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 –