私の上司がクラスとインターフェースを持っているとしましょう:
class HisBar {}
interface HisFooInterface
{
public function doSomethingWithBar(HisBar $bar);
}
そして、拡張する場合と拡張しない場合がある独自のクラスがありますHisBar
class MyBar extends HisBar {}
これができたらいいのに:
interface MyFooInterface extends HisFooInterface
{
public function doSomethingWithBar(MyBar $bar);
}
しかし、はい、エラーが発生します:
致命的なエラー: MyFooInterface::doSomethingWithBar() の宣言は、パス\to\MyFooInterface.php 行 xx の HisFooInterface::doSomethingWithBar(HisBar $bar) と互換性がある必要があります
つまり、インターフェイスのインスタンスを使用する必要がありますが、異なるタイプのヒントを使用することは可能ですか? これを行う方法はありますか?引数の型を変更するには? ありがとう。