php中error与exception的区别及应用


Posted in PHP onJuly 28, 2014

error与exception的区别查阅网上资料大多是java的解释,貌似php的异常处理过程与java差不多

java中的Object继承结构如下:

Object---->Throwable--------> Exception ----> RuntimeException | Error
Error都是unchecked类型 Exception分为checked 与 unchecked类型
且把异常与错误都当作程序运行不正常的现象来看待

如果区分异常与错误的话:
异常:非致命的。try{}catche(Exception e){} 执行中的try模块是测试运行,代码在运行过程中出现错误(非致命错误)执行catche
异常的作用类似于下面的这些代码:

if(mysql_connect('127.0.0.1','root','321321'))
{
   echo '连接数据库成功';
   // other code...
}
else
{
   echo '连接数据库错误';
   return false;
}

使用异常处理的情况可以很轻松的处理异常情况。如下面的代码可以一次性处理很多的异常情况

try
{
    mysql_connect('127.0.0.1','root','321321');
    // other code you want to execute
}catche(Exception $e){
    print_r($e);
}

错误致命的。一般都是程序语法错误或者用户级别的提示错误

错误与异常中都分为 checked与unchecked
checked 是可以让用户处理的,unchecked是不能被处理的
php中 Exception ,用户级别的错误可被用户处理 (client code) 其他的错误是不能被用户处理的
此外,java中还有个 RuntimeException 是不能被用户处理的。这个是运行级别的异常

PHP 相关文章推荐
PHP中的类-什么叫类
Nov 20 PHP
小偷PHP+Html+缓存
Dec 20 PHP
ThinkPHP3.2.2的插件控制器功能
Mar 05 PHP
PHP中把对象转换为关联数组代码分享
Apr 09 PHP
php简单判断两个字符串是否相等的方法
Jul 13 PHP
php简单构造json多维数组的方法示例
Jun 08 PHP
使用PHP json_decode可能遇到的坑与解决方法
Aug 03 PHP
thinkphp ajaxfileupload实现异步上传图片的示例
Aug 28 PHP
PHP进阶学习之依赖注入与Ioc容器详解
Jun 19 PHP
Laravel项目中timeAgo字段语言转换的改善方法示例
Sep 16 PHP
laravel批量生成假数据的方法
Oct 09 PHP
PHP使用递归按层级查找数据的方法
Nov 10 PHP
浅析get与post的一些特殊情况
Jul 28 #PHP
thinkphp学习笔记之多表查询
Jul 28 #PHP
CMS中PHP判断系统是否已经安装的方法示例
Jul 26 #PHP
PHP中file_exists函数不支持中文名的解决方法
Jul 26 #PHP
一个简洁实用的PHP缓存类完整实例
Jul 26 #PHP
PHP实现多图片上传类实例
Jul 26 #PHP
PHP判断文章里是否有图片的简单方法
Jul 26 #PHP
You might like
德劲1102收音机的打理维修案例
2021/03/02 无线电
php实现ping
2006/10/09 PHP
深思 PHP 数组遍历的差异(array_diff 的实现)
2008/03/23 PHP
php学习笔记之 函数声明
2011/06/09 PHP
php版小黄鸡simsimi聊天机器人接口分享
2014/01/26 PHP
typecho插件编写教程(三):保存配置
2015/05/28 PHP
BOOM vs RR BO5 第三场 2.14
2021/03/10 DOTA
jQuery中对节点进行操作的相关介绍
2013/04/16 Javascript
jQuery 借助插件Lavalamp实现导航条动态美化效果
2013/09/27 Javascript
原生JavaScript实现合并多个数组示例
2014/09/21 Javascript
浅谈JavaScript中的字符编码转换问题
2015/07/07 Javascript
不依赖Flash和任何JS库实现文本复制与剪切附源码下载
2015/10/09 Javascript
JavaScript中SetInterval与setTimeout的用法详解
2015/11/10 Javascript
js a标签点击事件
2017/03/30 Javascript
JQuery EasyUI的一些常用组件
2017/07/12 jQuery
vue中如何实现后台管理系统的权限控制的方法步骤
2019/09/05 Javascript
vant自定义二级菜单操作
2020/11/02 Javascript
vue 图片裁剪上传组件的实现
2020/11/12 Javascript
[12:36]《DOTA2》国服注册与激活指南全攻略
2013/04/28 DOTA
python33 urllib2使用方法细节讲解
2013/12/03 Python
python计算圆周率pi的方法
2015/07/11 Python
python实现域名系统(DNS)正向查询的方法
2016/04/19 Python
python读取excel表格生成erlang数据
2017/08/26 Python
PyQt5每天必学之像素图控件QPixmap
2018/04/19 Python
windows下的pycharm安装及其设置中文菜单
2020/04/23 Python
描述Cookie和Session的作用,区别和各自的应用范围,Session工作原理
2015/03/25 面试题
网络体系结构及协议的定义
2014/03/13 面试题
专业幼师实习生自我鉴定范文
2013/12/08 职场文书
个人党性剖析材料
2014/02/03 职场文书
人事部岗位职责范本
2014/03/05 职场文书
团结演讲稿范文
2014/05/23 职场文书
公证委托书
2014/08/01 职场文书
表扬信范文
2019/04/22 职场文书
500字作文之难忘的同学
2019/12/20 职场文书
Opencv中cv2.floodFill算法的使用
2021/06/18 Python
Spring JPA 增加字段执行异常问题及解决
2022/06/10 Java/Android