- 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;
}
- Advanced Quantitative Finance with C++
- Modular Programming with Python
- INSTANT FreeMarker Starter
- Visual FoxPro 程序設(shè)計(jì)
- 區(qū)塊鏈:以太坊DApp開發(fā)實(shí)戰(zhàn)
- Podman實(shí)戰(zhàn)
- Selenium Testing Tools Cookbook(Second Edition)
- 智能搜索和推薦系統(tǒng):原理、算法與應(yīng)用
- Vue.js 2 Web Development Projects
- C語言程序設(shè)計(jì)簡明教程:Qt實(shí)戰(zhàn)
- Couchbase Essentials
- Emotional Intelligence for IT Professionals
- 原型設(shè)計(jì):打造成功產(chǎn)品的實(shí)用方法及實(shí)踐
- MongoDB Cookbook
- VMware vSphere Design Essentials