PHP Conference Nagoya 2025

TypeError

(PHP 7, PHP 8)

Introducción

Un TypeError puede ser lanzado cuando:

  • El valor que se está estableciendo para una propiedad de clase no coincide con el tipo declarado correspondiente de la propiedad.
  • El tipo de argumento que se pasa a una función no coincide con su correspondiente tipo de parámetro declarado.
  • El valor que se devuelve de una función no coincide con el tipo de retorno de función declarado.

Sinopsis de la Clase

class TypeError extends Error {
/* Propiedades heredadas */
protected string $message = "";
private string $string = "";
protected int $code;
protected string $file = "";
protected int $line;
private array $trace = [];
private ?Throwable $previous = null;
/* Métodos heredados */
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
}

Historial de cambios

Versión Descripción
7.1.0 Un TypeError ya no se lanza cuando se pasa un número inválido de argumentos a una función PHP incorporada en modo estricto. En su lugar, se lanza un ArgumentCountError.
add a note

User Contributed Notes 1 note

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

<?php

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

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