CakeFest 2024: The Official CakePHP Conference

TypeError

(PHP 7, PHP 8)

Introduction

Une TypeError peut être lancée quand :

  • La valeur qui est définit pour une propriété de classe ne correspond pas au type déclaré de la propriété correspondante.
  • Le type de l'argument qui est passé à la fonction ne correspond pas à la déclaration du type du paramètre correspondant.
  • Une valeur qui est retourné par une fonction ne correspond pas au type de retour déclaré par la fonction.

Synopsis de la classe

class TypeError extends Error {
/* Propriétés héritées */
protected string $message = "";
private string $string = "";
protected int $code;
protected string $file = "";
protected int $line;
private array $trace = [];
private ?Throwable $previous = null;
/* Méthodes héritées */
public Error::__construct(string $message = "", int $code = 0, ?Throwable $previous = null)
final public Error::getMessage(): string
final public Error::getCode(): int
final public Error::getFile(): string
final public Error::getLine(): int
final public Error::getTrace(): array
private Error::__clone(): void
}

Historique

Version Description
7.1.0 Une TypeError n'est désormais plus lancé quand un nombre invalide d'argument est passé à une fonction interne de PHP en mode strict. À la place, une ArgumentCountError est levé.
add a note

User Contributed Notes 1 note

up
3
celsowmbr at outlook dot com
4 years ago
An example:

<?php

function test($x):int {
return
$x;
}

try {
test('ss');
}catch(
TypeError $e){
echo
"Error !";
}
To Top