- Building RESTful Web Services with PHP 7
- Haafiz Waheed ud din Ahmad
- 218字
- 2021-07-03 00:02:23
Errors and exceptions
In PHP7, most errors are now reported as error exceptions. Only a few fatal errors halt script execution; otherwise, if you are carrying out error or exception handling, it will not halt the script. This is because now the Errors class implements a Throwable interface just like the Exception class, which also implements Throwable. So now, in most cases, fatal errors can be avoided through exception handling.
Here are some sub-classes of the error class:
- TypeError
- ParseError
- ArithmeticError
- DivisionByZeroError
- AssertionError
This is how you can simply catch an error and handle it:
try {
fn();
} catch(Throwable $error){
echo $error->getMessage(); //Call to undefined function fn()
}
Here, $error->getMessage() is a method that is actually returning this message as a string. In our preceding example, the message will be similar to this: Call to undefined function fn().
This is not the only method you can use. Here is a list of methods that are defined in the Throwable interface; you can use them accordingly during error/exception handling. After all, the Exception and Error classes both implement the same Throwable interface:
interface Throwable
{
public function getMessage(): string;
public function getCode(): int;
public function getFile(): string;
public function getLine(): int;
public function getTrace(): array;
public function getTraceAsString(): string;
public function getPrevious(): Throwable;
public function __toString(): string;
}
- ASP.NET Core:Cloud-ready,Enterprise Web Application Development
- WebAssembly實戰
- Ceph Cookbook
- arc42 by Example
- Spring Boot+Spring Cloud+Vue+Element項目實戰:手把手教你開發權限管理系統
- Git高手之路
- Building Mobile Applications Using Kendo UI Mobile and ASP.NET Web API
- Java編程技術與項目實戰(第2版)
- 精通Linux(第2版)
- Python語言實用教程
- 大學計算機基礎
- FFmpeg開發實戰:從零基礎到短視頻上線
- Swift語言實戰晉級
- Clojure Web Development Essentials
- Practical Responsive Typography