资讯专栏INFORMATION COLUMN

深入理解PHP异常和错误处理(6)PHP如何优雅的处理错误

Alliot / 1352人阅读

摘要:好了,终于写完了深入理解异常和错误处理这个系列了,可能大家平时使用框架开发,基本上不用考虑错误和异常,阅读,评论转发数量不尽人意,也可能自己水平有限本文由甲爪广告联盟整理编辑

前言:有错就改,错误光屏蔽是不行的,还需要对错误进行处理和记录。

内容概要:

1、顶层错误处理器的介绍
2、示例代码

一、顶层错误处理器的介绍

php在处理错误的时候,可以简单的使用exit()和die()来进行基本的处理,不过这样处理会让程序显得臃肿。
PHP中也有一个比较神奇的函数用来处理错误,set_error_handler(),这个函数可以通过设置用户自定的错误函数,来处理所有的错误。用法和set_exception_handler()是一样的,不过错误函数的写法不一样。
二、实例代码:

废话少说,上代码:

运行结果:
/Users/haodaquan/Sites/Test/exception/index.php
8
Undefined variable: a
27
array(4) { ["_GET"]=> array(0) { } ["_POST"]=> array(0) { } ["_COOKIE"]=> array(0) { } ["_FILES"]=> array(0) { } }
看到了吧,默认处理了除零的错误,直接就地处理,是不是特别酸爽,哦,不,应该用优雅来形容。
另外,关于php的错误处理还有用户自定义的方式,用到的不多,这里就不介绍了。
使用顶层处理器的方式来处理错误和异常,这种用法在好多PHP中都存在,大家可以看看框架源码。
好了,终于写完了《深入理解PHP异常和错误处理》这个系列了,可能大家平时使用框架开发,基本上不用考虑错误和异常,阅读,评论、转发数量不尽人意,也可能自己水平有限

本文由甲爪cpa广告联盟整理编辑!

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/22577.html

相关文章

  • 如何优雅设计PHP异常

    摘要:现在我就用框架来进行实战下在实际业务中是如何优雅的使用异常的场景描述选择一个比较简单的业务场景,以登录模块为例,用户在移动端进行登录时,需要进行登录,注册,忘记密码,获取手机验证码等接口。 前言 刚开始接触PHP的时候没有意识到异常的重要性,有时候出问题很难精确的找到问题点,正确的处理异常也是一门学问 异常的类别 PHP7异常做了很多变动,异常类 Exception 和错误类 Erro...

    wing324 评论0 收藏0
  • 带你抛出优雅处理系统异常

    摘要:关于抛出异常如在我的上一篇文中所说的一样在接口的设计中接口的返回的数据是非常重要的例如无法避免的等等这些都是要命的错误同时还有一个极大的问题就是在新增模块中例如我最近需要新增一个的分词查询模块这个在添加索引删除索引等等操作的时候是非常容易导 showImg(http://pqykjwm6s.bkt.clouddn.com/Grassland_Scenery_by_Shi_Yuejun....

    susheng 评论0 收藏0
  • PHP程序员学习路线

    摘要:第一阶段基础阶段基础程序员重点把搞熟练核心是安装配置基本操作目标能够完成基本的系统安装,简单配置维护能够做基本的简单系统的开发能够在中型系统中支持某个功能模块的开发。本项不做重点学习,除非对前端有兴趣。 第一阶段:基础阶段(基础PHP程序员) 重点:把LNMP搞熟练(核心是安装配置基本操作) 目标:能够完成基本的LNMP系统安装,简单配置维护;能够做基本的简单系统的PHP开发;能够在P...

    genedna 评论0 收藏0
  • 从0开始构建一个属于你自己PHP框架

    摘要:如何构建一个自己的框架为什么我们要去构建一个自己的框架可能绝大多数的人都会说市面上已经那么多的框架了,还造什么轮子。 showImg(https://segmentfault.com/img/bVNg9F?w=500&h=500); 如何构建一个自己的PHP框架 为什么我们要去构建一个自己的PHP框架?可能绝大多数的人都会说市面上已经那么多的框架了,还造什么轮子?。我的观点造轮子不是目...

    vpants 评论0 收藏0
  • php异常处理深入

    摘要:当项目抛出异常时操作那个方法时传的参数执行操作异常相关操作当前异常类通过异常类名,我们可以知道是订单支付异常。 引出 如果你调一个类,调用时数据验证时报了个错,你会以什么方式返回 数组,布尔值? 数组这个可以带错误原因回来,那布尔值呢? 返回了个 false, 报错时把错误放在类变量里?还是专门用一个获取错误的方法进行获取? 上面说的情况是代码完全没有问题的情况。那如果是一些第三方的工...

    shadowbook 评论0 收藏0

发表评论

0条评论

Alliot

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<