PHP 异常类 Exception 高洛峰 细说PHP
/** 1.自定义的异常类,必须是系统类Exception的子类* 如果继承Exception类,重写了构造方法,一定要调用一下父类的构造方法。*/class MyException extends Exception{//必须继承Exception类function __construct($mess){parent::__construct($mess);}function change(){//自定义方法echo '换上备胎';}}
echo "早上起床<br/>";$flag = true;//根据异常情况设置标志位来抛出异常try{echo "开车上班<br/>";if($flag){//抛出异常throw new MyException("车子爆胎");}echo "路况很好<br/>";
}catch(MyException $e){//$e = new Exception();echo $e->getMessage()."<br/>";echo $e->change()."<br/>";//调用自定义类的方法echo "换上备胎,继续开车上班<br/>";
}echo "到公司<br/>";
============================================================================
/** 捕获多个异常catch*/class WcException extends Exception{function methodWc(){echo "去公厕";}}class NoeatException extends Exception{function methodEat(){echo "买个面包";} }class NutException extends Exception{function methodGowork(){echo "换个轮胎";}}class SnowException extends Exception{function methodHighway(){echo "走小路";}}class Badday{function gowc($flag){if(!$flag){throw new WcException("马桶坏了");}echo "物质准备到位<br/>";}function eat($time){if(!$time){throw new NoeatException("无早餐可吃");}echo "吃很饱<br/>";}function gowork($nut){if(!$nut){throw new NutException("扎到钉子了");}echo "去上班啦!<br/>";}function highway($snow){if(!$snow){throw new SnowException("下雪封路了");}echo "走高速<br/>";}}
echo "早上起床<br/>";$flag = false;//根据异常情况设置标志位来抛出异常try{$badday = new Badday();//1.上厕所(马桶不好用了) 去公厕$badday->gowc(true);//2.吃早餐(没有早点了) 买个面包$badday->eat(false);//3.开车上班(爆胎) 换胎$badday->gowork(true);//4.上高速(下雪了) 走国道$badday->highway(true);
}catch(WcException $e){echo $e->methodWc();
}catch (NoeatException $e){echo $e->methodEat();
}catch(NutException $e){echo $e->methodGowork();
}catch(SnowException $e){echo $e->methodHighway();
}catch (Exception $e){echo $e->getMessage();
}echo "到公司<br/>";
转载于:https://blog.51cto.com/11410485/1842207
PHP 异常类 Exception 高洛峰 细说PHP相关推荐
- php memcache内存大小,PHP memcache 内存缓存 数据库查询 应用 高洛峰 细说PHP
PHP memcache 内存缓存 数据库查询 应用 高洛峰 细说PHP 发布时间:2020-06-22 18:23:10 来源:51CTO 阅读:232 作者:津沙港湾 栏目:数据库 PHP mem ...
- PHP 自定义session储存 数据库 方式类 高洛峰 细说PHP
自定义session储存 数据库 方式类 在php.ini配置文件中更改设置 (Registered_save_handlers 有三种方式 files user memcache) session. ...
- PHP 分页类 高洛峰 细说PHP
分页类 <?php //分页类class Page{private $total; //总记录数private $nums; //每页显示的条数private $pages; //总页数priv ...
- PHP 自定义 Smarty 模板引擎类 高洛峰 细说PHP
smarty模板引擎类简单工作原理 利用Smarty 模板引擎类对模板文件中的变量进行编译,编译过程其实就是利用正则表达式翻译成PHP文件.例如 模板文件中{$title} 利用正则表达式找到并替换成 ...
- 高洛峰ajax分页源码,PHP 分页类 高洛峰 细说PHP
分页类<?php //分页类 class Page{ private $total; //总记录数 private $nums; //每页显示的条数 privat ...
- php 高洛峰 正则,PHP 自定义 Smarty 模板引擎类 高洛峰 细说PHP
smarty模板引擎类简单工作原理 利用Smarty 模板引擎类对模板文件中的变量进行编译,编译过程其实就是利用正则表达式翻译成PHP文件.例如 模板文件中{$title}利用正则表达式找到并替换成 ...
- php session 自定义到数据库,PHP 自定义session储存 数据库 方式类 高洛峰 细说PHP...
自定义session储存 数据库 方式类 在php.ini配置文件中更改设置 (Registered_save_handlers 有三种方式 files user memcache) session. ...
- PHP 文件上传类 FileUpload 高洛峰老师 细说PHP
/**文件名为FileUpload.class.php*将与文件上传相关的成员属性和成员方法声明在一起*/class FileUpload{private $filePath; //保存上传文件将被保 ...
- fileupload.class.php,PHP 文件上传类 FileUpload 高洛峰老师 细说PHP
/* *文件名为FileUpload.class.php *将与文件上传相关的成员属性和成员方法声明在一起 */ class FileUpload{ private $filePath; ...
最新文章
- 1013. 数素数 (20)
- xtrabackup增量备份mysql +MHA
- boost::math模块使用指定宽度的浮点 typedef估中等复杂的数学函数的测试程序
- WCF、WebAPI、WCFREST、WebService之间的区别
- JQuery AJAX提交中文乱码的解决方案
- 为什么线程池里的方法会执行两次_面试官问你java都有哪些线程池,自己是否自定义过线程池...
- readonly与disabled属性在css中区别
- 引人瞩目的 CSS 变量(CSS Variable)
- android xutil 数据库,Android XUtils3框架的基本使用方法(二)
- Java:关于负数的向上转型
- linux 编译-l,GCC编译器下的-L与-l的区别
- Iphone被刷机后用电信卡提示未激活,移动联通卡可以正常使用
- 手机IMSI码规则更新-通过IMSI判断运营商的方法
- wpf net6.0 桌面应用程序打包
- 树的递归遍历与递归序
- 笔记本搜索不到家里路由器WiFi,但可以连接手机热点,而其他设备可以搜索并连接WiFi
- 3月16日——3月20日课程表
- 鲁班学院-java架构师线上培训机构哪家好
- C#毕业设计——基于C#+c+sqlserver的办公耗材库存管理软件设计与实现(毕业论文+程序源码)——库存管理软件
- 机器学习中qa测试_机器学习项目测试怎么做?(看实例)