韩顺平php视频笔记79 80 错误和异常处理的机制 错误处理器 错误触发器
来源:互联网 发布:php推送消息到app 编辑:程序博客网 时间:2024/05/22 17:24
注意:php中
php中错误和异常处理的机制
如果没有错误处理机制怎样?
<?php
//打开文件-
$fp=fopen(“aaa.txt”,”r”);
echo “ok”;
?>
上面的代码没有处理错误,应当这样写程序更加健壮.
<?php
//$fp=fopen("aaa.txt","r");
//echo "ok";
//1.判断文件是否存在.
//2. 绝对路径和相对路径
if(!file_exists("aaa.txt")){
echo "文件不存在!";
exit();
}else{
$fp=fopen("aaa.txt","r");
echo "文件打开成功";
//....关闭
fclose($fp);
}
?>
☞ 解释了一下绝对路径和相对路径
php处理错误的三种方法
1. 使用简单的die 语句
使用方法如下 :
(1)
if(!file_exists("aaa.txt")){
die("文件不存在");
}else{
//打开文件操作
}
echo "ok";
(2) 更简单的方法
file_exists("aaa.txt") or die("文件不存在!!!");
--------------------------------------------------------------------------------------------------------------------------------------
u 用户自定义错误处理器
在php中对错误有不同的级别区分:
案例入门 :
<?php
//定义了一个函数(我用于处理错误的函数)
function my_error($errno,$errmes){
echo "<font size='5' color='red'>$errno</font><br/>";
echo "错误信息是:";
exit();
}
//改写set_error_handler处理器
//下面这句话的含义是 : 如果出现了 E_WARNING这个级别的错误,就去调用my_error函数.
set_error_handler("my_error",E_WARNING);
$fp=fopen("aa.txt","r");
?>
原理图:
错误触发器
需求: 有一段代码: 如果接受一个年龄, 如果年龄输入>120, 我认为就是一一个错误.
//传统的方法
if($age>120){
echo “年龄过大”;
exit();
}
//需求,输入一个薪水,如果大于10000,我认为有是错误.
if($salary>10000){
echo “薪水多”;
exit();
}
1现在我们可以使用自定义错误触发器来完成!
快速入门案例:
//自定义错误函数
function my_error3($errno,$errmes){
echo "错误号是:".$errno;
}
function my_error4($errno,$errmes){
echo "出大事了".$errno;
exit();
}
//指定E_USER_WARNING 错误级别的函数
set_error_handler("my_error3",E_USER_WARNING);
set_error_handler("my_error4",E_USER_ERROR);
$age=700;
if($age>120){
//调用触发器,时候同时指定错误级别.
trigger_error("输入年龄过大1",E_USER_ERROR);
//exit();
}
echo "ok";
原理图
- 韩顺平php视频笔记79 80 错误和异常处理的机制 错误处理器 错误触发器
- php中错误和异常处理的机制二(错误处理器和错误触发器)
- 韩顺平php视频笔记80 81 错误日志 异常捕获
- PHP学习笔记【16】--错误处理器和错误触发器
- PHP中错误和异常处理机制
- php异常、错误处理机制
- php异常、错误处理机制
- php中错误和异常处理的机制一
- PHP中文件简单错误和异常处理的机制
- 【异常和错误】PHP的异常和错误处理【原创】
- php的错误处理和异常处理
- php错误处理和php异常处理机制
- php中错误和异常处理的机制三(错误日志)
- PHP中的错误处理、异常处理机制
- PHP中的错误处理、异常处理机制
- PHP中的错误处理、异常处理机制
- PHP 的错误和异常处理
- php的错误和异常处理
- Bookmarks 2015-1-27
- 实现按行读取文件,把内容按照第三种内存模型打包数据传出,把行数通过函数参数传出。
- Loadrunner中吞吐量与带宽的换算
- Eclipse相关问题总结
- nginx开启status模块监控
- 韩顺平php视频笔记79 80 错误和异常处理的机制 错误处理器 错误触发器
- MFC单文档框架编程(一): 分隔窗口的实现
- 常用Linux命令合集
- MFC单文档框架编程(二): SDI框架下的消息处理
- MFC单文档框架编程(三): CTabView的使用
- Struts 1 之<bean>标签库
- delphi 中的函数指针 回调函数
- uva 11388 GCD LCM(简单数学)
- Redis命令总结