TypeError

(PHP 7, PHP 8)

はじめに

TypeError がスローされるのは、以下の場合です:

  • クラスのプロパティに設定されている値が、プロパティで宣言されている型と一致しない場合。
  • 関数に渡された引数の型が、関数の宣言時に指定された型と一致しない場合。
  • 関数の戻り値の型が、関数の宣言時に指定された型と一致しない場合。

クラス概要

class TypeError extends Error {
/* 継承したプロパティ */
protected string $message = "";
private string $string = "";
protected int $code;
protected string $file = "";
protected int $line;
private array $trace = [];
private ?Throwable $previous = null;
/* 継承したメソッド */
final public Error::getMessage(): string
final public Error::getPrevious(): ?Throwable
final public Error::getCode(): int
final public Error::getFile(): string
final public Error::getLine(): int
final public Error::getTrace(): array
final public Error::getTraceAsString(): string
public Error::__toString(): string
private Error::__clone(): void
}

変更履歴

バージョン 説明
7.1.0 strict モードの場合に、 PHP の組み込みの関数に渡す引数の数を間違えた場合でも、 TypeError はスローされなくなりました。 代わりに、 ArgumentCountError がスローされるようになっています。