PHP exception and error handling_PHP tutorial

WBOY
Release: 2016-07-13 10:33:18
Original
949 people have browsed it

Exception handling: An accident is an unexpected thing that occurs during the running of the program. Use exceptions to change the normal flow of the script.

try
{
}
catch(异常对象)
{
}
Copy after login
  1. If there is no problem with the code in try, then after executing the code in try, it will be executed after catch
  2. If an exception occurs in the code in try, an exception object will be thrown to the object in catch. Then the code in try will not continue to execute, and will jump directly to catch for execution. In catch After the execution is completed, continue execution.

Note: It is not our main task to prompt what exception occurred. We need to solve this exception in catch. If it cannot be solved, it will be thrown to the user.

<?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();
}
?>
Copy after login

Error handling: 1. Syntax error 2. Runtime error 3. Logic error

Error report: Error: E_ERROR Warning: E_WARNING Note: E_NOTICE

Recommendation: Development stage: Development is to output all error reports, which is helpful for debugging the program. Running phase: Do not let the program output any kind of error report.

<?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!!!!");    //输出错误信息
	
?>
Copy after login

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/752516.htmlTechArticleException handling: An accident is an unexpected thing that happens during the running of the program. Use exceptions to change the script normally process. try{}catch(Exception object){} If there is no problem with the code in try, execute...
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template