这里有新鲜出炉的 PHP 面向对象编程,程序狗速度看过来!
PHP(外文名: Hypertext Preprocessor,中文名:"超文本预处理器")是一种通用开源脚本语言。语法吸收了 C 语言、Java 和 Perl 的特点,入门门槛较低,易于学习,使用广泛,主要适用于 web 开发领域。PHP 的文件后缀名为 php。
下面小编就为大家带来一篇浅谈 PHP 中的错误处理和异常处理。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
错误处理:
1. 语法错误
2. 运行时的错误
3. 逻辑错误
错误报告:
错误 E_ERROR
警告 E_WARNING
注意 E_NOTICE
开发阶段:开发时输出所有的错误报告,有利于我们进行调试
运行阶段:不要让程序输出任何一种错误报告
将错误报告写入日志中
一. 指定错误报告 error_reporting=E_ALL(在 php.inn)
二. 关闭错误输出 display_errors=off(在 php.ini 中)
三. 开启错误日志的功能 log_errors=on(在 php.ini 中)
1. 默认如果不指定错误日志位置,则默认写入 web 服务器的日志中
2. 为 error_log 选项指定一个文件名,这个文件名就是错误日志
3. 写入到操作系统日志中 error_log=syslog
- <?php
- //注意和警告都不会终止程序的运行,但是错误会终止程序的运行
- /*
- 错误E_ERROR
- 警告E_WARNING
- 注意E_NOTICE
- */
- //所有的错误都输出除了注意
- error_reporting(E_ALL & ~E_NOTICE);
- //设置配置文件的值(临时)
- //ini_set("upload_max_filesize", 2000000000);
- //得到配置文件的值
- //ini_get("upload_max_filesize");
- //关闭错误报告的显示,一般在运行阶段使用
- ini_set("display_errors", "off");
- //将错误报告写入日志中
- ini_set("log_errors", "on");
- //日志的目录
- ini_set("error_log", "D:/error.log");
- gettype($var); //注意
- gettype(); //警告
- //getype(); //错误,程序终止
- echo "############<br>";
- ?>
异常处理:意外,是在程序运行过程中发生的意料之外的事,使用异常改变脚本正常流程
PHP5 中的一个新的重要特性
try{
}catch(异常对象){
}
1. 如果 try 中代码没有问题,则将 try 中代码执行完成后就到 catch 后执行
2. 如果 try 中代码有异常发生,则抛出一个异常对象(使用 throw),抛出给了 catch 中的参数,则在 try 中出现异常代码后的内容就不会执行,直接跳转到 catch 中去执行,catch 中执行完成,再继续向下执行
- <?php
- try{
- echo "11111111<br>";
- $file=@fopen("./hello.txt","r");
- if(!$file){
- throw new Exception("文件打开失败");
- }
- echo "2222222222<br>";
- }catch(Exception $e){
- echo "3333333<br>";
- echo $e->getMessage()."<br>";
- touch("hello.txt");
- $file=@fopen("./hello.txt","r");
- }
- echo "4444444<br>";
- ?>
以上这篇浅谈 PHP 中的错误处理和异常处理就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持 PHPERZ。
来源: http://www.phperz.com/article/17/0810/340646.html