PHP 8.5.0 Beta 2 available for testing

The ReflectionException class

(PHP 5, PHP 7, PHP 8)

Introduction

The ReflectionException class.

Class synopsis

class ReflectionException extends Exception {
/* Inherited properties */
protected string $message = "";
private string $string = "";
protected int $code ;
protected string $file = "";
protected int $line ;
private array $trace = [];
private ?Throwable $previous = null;
/* Inherited methods */
public Exception::__construct (string $message = "", int $code = 0, ? Throwable $previous = null )
final public Exception::getMessage (): string
final public Exception::getCode (): int
final public Exception::getFile (): string
final public Exception::getLine (): int
final public Exception::getTrace (): array
}

Found A Problem?

Learn How To Improve This PageSubmit a Pull RequestReport a Bug
+add a note

User Contributed Notes 1 note

up
10
temirkhan.nasukhov
6 years ago
Note that this exception is unchecked even if it is not based on RuntimeException. Such error must lead to direct fixes in code and not in catch-handle of situation.

Also keep in mind that IDE (mine is Phpstorm 2018年3月4日) inspections will highlight it for that reason so do not create phpdoc with throws for any Runtime exceptions.

<?php

/**
* This way is wrong
*
* @throws \ReflectionException
*/
function createReflection()
{
return new
\ReflectionClass('invalid argument');
}

/**
* This way is fine(I don't mean the code of course)
*/
function createReflection()
{
return new
\ReflectionClass('invalid argument');
}
+add a note

AltStyle によって変換されたページ (->オリジナル) /