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 相关文章推荐
根据ip调用新浪api获取城市名并转成拼音
Mar 07 PHP
Dwz与thinkphp整合下的数据导出到Excel实例
Dec 04 PHP
phpQuery让php处理html代码像jQuery一样方便
Jan 06 PHP
PHP开发Apache服务器配置
Jul 15 PHP
PHP实现动态web服务器方法
Jul 29 PHP
Zend Framework教程之配置文件application.ini解析
Mar 10 PHP
php禁用cookie后session设置方法分析
Oct 19 PHP
php微信公众平台开发(四)回复功能开发
Dec 06 PHP
Laravel中前端js上传图片到七牛云的示例代码
Sep 04 PHP
在 Laravel 中 “规范” 的开发短信验证码发送功能
Oct 26 PHP
PHP使用gearman进行异步的邮件或短信发送操作详解
Feb 27 PHP
php远程请求CURL实例教程(爬虫、保存登录状态)
Dec 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
星际玩家的三大定律
2020/03/04 星际争霸
php页面消耗内存过大的处理办法
2013/03/18 PHP
PHP操作FTP类 (上传、下载、移动、创建等)
2016/03/31 PHP
laravel 5.3中自定义加密服务的方案详解
2017/05/09 PHP
PHP设计模式之工厂模式实例总结
2017/09/01 PHP
PHP实现二维数组中的查找算法小结
2018/06/09 PHP
Yii2框架配置文件(Application属性)与调试技巧实例分析
2019/05/27 PHP
javascript Base类 包含基本的方法
2009/07/22 Javascript
JavaScript 计算图片加载数量的代码
2011/01/01 Javascript
Javascript call和apply区别及使用方法
2013/11/14 Javascript
window.location.href IE下跳转失效的解决方法
2014/03/27 Javascript
nodejs教程之异步I/O
2014/11/21 NodeJs
JavaScript实现更改网页背景与字体颜色的方法
2015/02/02 Javascript
为jQuery-easyui的tab组件添加右键菜单功能的简单实例
2016/10/10 Javascript
浅谈jquery之on()绑定事件和off()解除绑定事件
2016/10/26 Javascript
Vue组件tree实现树形菜单
2017/04/13 Javascript
js指定步长实现单方向匀速运动
2017/07/17 Javascript
详解react-router4 异步加载路由两种方法
2017/09/12 Javascript
Vue基于NUXT的SSR详解
2017/10/24 Javascript
详解ES6 export default 和 import语句中的解构赋值
2019/05/28 Javascript
细说Vue组件的服务器端渲染的过程
2019/05/30 Javascript
利用JavaScript模拟京东按键输入功能
2020/12/01 Javascript
[01:10:48]完美世界DOTA2联赛PWL S2 GXR vs PXG 第一场 11.18
2020/11/18 DOTA
Python的Flask框架中Flask-Admin库的简单入门指引
2015/04/07 Python
Python 获得命令行参数的方法(推荐)
2018/01/24 Python
python dlib人脸识别代码实例
2019/04/04 Python
Python如何操作docker redis过程解析
2020/08/10 Python
python利用xlsxwriter模块 操作 Excel
2020/10/14 Python
全球性的在线鞋类品牌:Public Desire
2019/04/03 全球购物
酒店总经理职务说明书
2014/02/26 职场文书
浪费资源的建议书
2014/03/12 职场文书
学生个人自我鉴定范文
2014/03/28 职场文书
商务宴会祝酒词
2015/08/11 职场文书
三好学生主要事迹材料
2015/11/03 职场文书
python 网络编程要点总结
2021/06/18 Python
Python办公自动化解决world文件批量转换
2021/09/15 Python