PHP Try-catch 语句使用技巧


Posted in PHP onFebruary 28, 2016

PHP Try-catch 语句
为了进一步处理异常,我们需要使用try-catch语句----包括Try语句和至少一个的catch语句。任何调用 可能抛出异常的方法的代码都应该使用try语句。Catch语句用来处理可能抛出的异常。以下显示了我们处理getCommandObject()抛出的异常的方法:

<?php 
try { 
  $mgr = new CommandManager(); 
  $cmd = $mgr->getCommandObject("realcommand"); 
  $cmd->execute(); 
} catch (Exception $e) { 
  print $e->getMessage(); 
  exit(); 
} 
?>

可以看到,通过结合使用throw关键字和try-catch语句,我们可以避免错误标记“污染”类方法返回的值。因为“异常”本身就是一种与其它任何对象不同的PHP内建的类型,不会产生混淆。

如果抛出了一个异常,try语句中的脚本将会停止执行,然后马上转向执行catch语句中的脚本。

如果异常抛出了却没有被捕捉到,就会产生一个fatal error。

PHP 相关文章推荐
在同一窗体中使用PHP来处理多个提交任务
May 08 PHP
[原创]效率较高的php下读取文本文件的代码
Jul 02 PHP
IStream与TStream之间的相互转换
Aug 01 PHP
MySQL时间字段究竟使用INT还是DateTime的说明
Feb 27 PHP
php json_encode值中大括号与花括号区别
Sep 30 PHP
php中怎么搜索相关联数组键值及获取之
Oct 17 PHP
JS异常处理try..catch语句的作用和实例
May 05 PHP
thinkphp3.2.2实现生成多张缩略图的方法
Dec 19 PHP
PHP加密解密字符串汇总
Apr 26 PHP
DEDECMS首页调用图片集里的多张图片
Jun 05 PHP
THinkPHP获取客户端IP与IP地址查询的方法
Nov 14 PHP
Yii框架引入coreseek分页功能示例
Feb 08 PHP
linux下为php添加iconv模块的方法
Feb 28 #PHP
PHP中模拟链表和链表的基本操作示例
Feb 27 #PHP
PHP使用Memcache时模拟命名空间及缓存失效问题的解决
Feb 27 #PHP
简单谈谈PHP中strlen 函数
Feb 27 #PHP
详解PHP的Laravel框架中Eloquent对象关系映射使用
Feb 26 #PHP
PHP文件缓存smarty模板应用实例分析
Feb 26 #PHP
PHP计算当前坐标3公里内4个角落的最大最小经纬度实例
Feb 26 #PHP
You might like
PHP curl 并发最佳实践代码分享
2012/09/05 PHP
php实现在服务器端调整图片大小的方法
2015/06/16 PHP
PHP文件打开关闭及读写操作示例解析
2020/08/06 PHP
IE和Firefox下event事件杂谈
2009/12/18 Javascript
JS 文件大小判断的实现代码
2010/04/07 Javascript
JS运行耗时操作的延时显示方法
2010/11/19 Javascript
jquery Mobile入门—外部链接切换示例代码
2013/01/08 Javascript
js判断输入是否为数字的具体实例
2013/08/03 Javascript
javascript获取元素偏移量的方法有哪些
2014/06/24 Javascript
谈谈JavaScript自定义回调函数
2015/10/18 Javascript
利用Angular.js限制textarea输入的字数
2016/10/20 Javascript
Javascript 正则表达式校验数字的简单实例
2016/11/02 Javascript
微信小程序实现移动端滑动分页效果(ajax)
2017/06/13 Javascript
node.js express中app.param的用法详解
2017/07/16 Javascript
微信小程序scroll-view组件实现滚动动画
2018/01/31 Javascript
如何使用less实现随机下雪动画详解
2019/01/02 Javascript
详解在Javascript中进行面向切面编程
2019/04/28 Javascript
vue下使用nginx刷新页面404的问题解决
2019/08/02 Javascript
vue中的v-model原理,与组件自定义v-model详解
2020/08/04 Javascript
解决Vue keep-alive 调用 $destory() 页面不再被缓存的情况
2020/10/30 Javascript
vue中axios封装使用的完整教程
2021/03/03 Vue.js
[01:25]DOTA2自定义游戏灵园鬼域等你踏足
2015/10/30 DOTA
python使用os模块的os.walk遍历文件夹示例
2014/01/27 Python
Django集成百度富文本编辑器uEditor攻略
2014/07/04 Python
Python 调用Java实例详解
2017/06/02 Python
详解django2中关于时间处理策略
2019/03/06 Python
详解python中的time和datetime的常用方法
2019/07/08 Python
使用pandas读取文件的实现
2019/07/31 Python
python web框架 django wsgi原理解析
2019/08/20 Python
Python while循环使用else语句代码实例
2020/02/07 Python
String和StringBuffer的区别
2015/08/13 面试题
求职自荐信范文格式
2013/11/29 职场文书
初中毕业生自我评价
2015/03/02 职场文书
用golang如何替换某个文件中的字符串
2021/04/25 Golang
如何用vue实现网页截图你知道吗
2021/11/17 Vue.js
68行Python代码实现带难度升级的贪吃蛇
2022/01/18 Python