1.使用die
/* if(!file_exists('aaa.txt')){
echo "访问的文件不存在";
exit();
}
$fo=fopen('aaa.txt','r');
echo "ok"; */
file_exists('aaa.txt') or die('文件不存在');
$fo=fopen('aaa.txt','r');
2.错误处理器
function myError($errno,$errmgs){
echo "错误号是:".$errno.'--'.$errmgs;
}
//E_WARNING
set_error_handler("myError",E_ALL);
$fo=fopen('bbb.txt','r');
3.错误触发器
function myError($errno,$errmgs){
echo "错误号是:".$errno.'--'.$errmgs;
}
//E_USER_WARNING/E_USER_ERROR/E_USER_NOTICE
set_error_handler("myError",E_USER_NOTICE);
$age=700;
if($age>120){
//trigger_error("输入的年龄过大");
trigger_error("输入的年龄过大",E_USER_NOTICE);
exit();
}
4.错误日志
//设置时区
date_default_timezone_set("PRC");
function myError($errno,$errmgs){
echo "错误号是:".$errno.'--'.$errmgs;
$info="时间:".date('Y-m-d G-i-s')."错误号是:".$errno.'--'.$errmgs."\r\n";
error_log($info,3,'aaa.txt');
}
//E_WARNING
set_error_handler("myError",E_USER_WARNING);
$age=700;
if($age>120){
trigger_error("输入的年龄过大",E_USER_WARNING);
}
5.异常处理
function show($name){
if($name!='yaksun'){
throw new Exception("你丫写错了");
}
}
try{
show('yaksun');
}catch(Exception $e){
echo $e->getMessage();
}
//定义自己的顶级异常处理器
function my_exception($e){
echo $e->getMessage();
}
set_exception_handler("my_exception");
function show($name){
if($name!='xxx'){
throw new Exception("你丫写错了");
}
}
try{
show('yaksun');
}catch(Exception $e){
throw($e);
}