4

私は持っている

abstract class A{
  public static function getSingle($where = []) {
    $classname = get_called_class();

    $record =     static::turnTheWhereIntoArecordFromDB($where);
    $model = new  $classname($record);
    return $model;
  }
}

class B extends A{

}


$x = B::getSingle();

$xタイプヒンティングはありません...タイプヒンティングが好きなので、のBではなく、のタイプのヒンティングが必要ですA

の型ヒントを直接有効にする方法は$x?

私が思ったことは次のようなものです

 public function getSingle($where = []) : ?get_called_class()

これは明らかにうまくいきません

するものはありますか?

4

4 に答える 4