zoukankan      html  css  js  c++  java
  • thinkphp 如何自定义一个错误处理类

    异常处理

    tp5提供了一个异常处理接管

    例如你新建了一个异常处理接管的类

    - 手册:在config 中 
    
    	// 异常处理handle类 
    	exception_handle'       => 'appcommonlibApiHandleException', 
    	
    	## 我在commonlib 下创建了一个 ApiHandleException 类
    	
    	<?php 
    		namespace appcommonlib;
    		use Exception;
    		use thinkexceptionHandle;
    		use appcommonlibApiException;
    
    
    		// 异常处理接管
    		class ApiHandleException extends Handle
    		{
    			protected $httpCode = 500;
    
    			/** $httpCode http 状态码
    			 *  $e->getMessage() 异常信息
    			 */
    			public function render(Exception $e){
    			
    				// 通过调用 ApiException 来获取当前的错误来源,默认是当是ApiException表明是系统识别的异常错误,默认为其他错误,也就try catch 触发的错误
    				// 检查归属的类型
    				if($e instanceof ApiException){
    					$this->httpCode = $e->httpCode;
    				}
    				
    				// showJson 是我自定义的一个公共函数,用来返回一写json数据
    				// (int status:状态,$e->getMessage():返回的错误信息,[]:返回的数据,$this->httpCode 状态码)
    				return showJson(0,$e->getMessage(),[],$this->httpCode);
    		   }
    
    
    		}
    

    ApiException

    <?php 
    namespace appcommonlib;
    use Exception;
    
    
    // 自定义异常
    class ApiException extends Exception {
    
    	public $message = '';
    	public $httpCode = 500;
    	public $code = 0;
    
    	public function __construct($message='',$httpCode=500,$code=0){
    		$this->httpCode = $httpCode;
    		$this->message = $message;
    		$this->code = $code;
    	}
    
    
    }
  • 相关阅读:
    java中通过jacob调用dts进行数据导入导出
    Tomcat6 配置快逸报表
    [转]Sql Server Alter语句
    redhat linux卸载自带的Java1.4.2安装JDK6
    住房公积金额度计算
    JVisualVM使用
    Tomcat假死之问题原因排查
    JVM内存调优之监控篇
    tomcat之JVM GC 日志文件生成
    webstorm8的license
  • 原文地址:https://www.cnblogs.com/ar13/p/9061992.html
Copyright © 2011-2022 走看看