Skip to content

ConstructorSignatureMismatch

コンストラクタのパラメータが親クラスのコンストラクタのパラメータと異なる場合、または親クラスのコンストラクタよりもパラメータが少ない場合に発生します。ただし、親クラスに@psalm-consistent-constructorアノテーションがある場合に限ります。

<?php
/** 
 * @psalm-consistent-constructor 
 */
class A {
    public function __construct(int $i) {}
}

class B extends A {
    public function __construct(string $s) {}
}

ユーザーノート