异常处理:意外,是在程序运行过程中发生的意料之外的事,使用异常改变脚本正常流程。
try { } catch(异常对象) { }
- 如果try中代码没问题,则执行完try中代码后就到catch后执行
- 如果try中代码有异常发生,则抛出一个异常对象,抛出给catch中的对象,则在try中代码就不会再继续执行下去,直接跳转到catch中去执行,catch中执行完成,在继续向下执行。
注意:提示发生了什么异常,不是我们主要做的事情,需要在catch中解决这个异常,如果解决不了,则抛出给用户。
<?php class OpenFileException extends Exception{ function open(){ touch("tmp.txt"); $file=fopen("tmp.txt","r"); return $file; } } class DemoException extends Exception{ function pro(){ echo "Demo异常<br />"; } } class MyClass{ function openfile(){ $file=@fopen("aaa.txt","r"); if(!$file) throw new OpenFileException("文件打开失败"); } function demo($num=0){ if($num==1) throw new DemoException("演示异常!"); } } try{ $my=new MyClass(); $my->openfile(); $my->demo("1"); }catch(OpenFileException $e){ echo $e->getMessage()."<br />"; $file=$e->open(); }catch(DemoException $e){ echo $e->getMessage()."<br />"; $e->pro(); }catch(Exception $e){ //接收抛出了但没有处理的所有异常 echo $e->getMessage(); } ?>
错误处理:1.语法错误 2.运行时的错误 3.逻辑错误
错误报告: 错误:E_ERROR 警告:E_WARNING 注意:E_NOTICE
建议: 开发阶段:开发是输出所有的错误报告,有利于调试程序。运行阶段:不要让程序输出任何一种错误报告。
<?PHP error_reporting(E_ALL); //1.指定错误报告,错误类型为全部 //ini_set("error_reporting",E_ALL); //临时改变配置文件的值 //ini_get("upload_max_filesize"); //获取配置文件的值 ini_set("display_errors","off"); //2.关闭配置文件中的显示错误 ini_set("log_errors","on"); //3.开启错误日志功能 ini_set("error_log","C:/error.log"); //4.指定错误文件(可写) error_log("this is a error message!!!!"); //输出错误信息 ?>
声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章
Windows 11 KB5054979中的新功能以及如何解决更新问题
3 周前ByDDD
如何修复KB5055523无法在Windows 11中安装?
2 周前ByDDD
Inzoi:如何申请学校和大学
4 周前ByDDD
如何修复KB5055518无法在Windows 10中安装?
2 周前ByDDD
在哪里可以找到Atomfall中的站点办公室钥匙
4 周前ByDDD

热工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

WebStorm Mac版
好用的JavaScript开发工具

Dreamweaver Mac版
视觉化网页开发工具

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

禅工作室 13.0.1
功能强大的PHP集成开发环境