1. 程式人生 > >一段PHP異常

一段PHP異常

any pos and date get erro type comm clas

這是我寫的一段代碼,裏面通過PHP異常功能,實現報錯時顯示出錯代碼所在行。當使用者操作出錯時,截圖給我,我可以很快得去追蹤和排查錯誤!

public function added_business_submit(){
    try{
        extract($_POST);
        if(‘‘==$title)          self::json(0,sprintf(ERROR_EMPTY,‘工單標題‘));
        if(‘‘==$is_trusteeship) self::json(0,sprintf(ERROR_EMPTY,‘服務器類別‘));
        
if(‘‘==$eqroom_id) self::json(0,sprintf(ERROR_EMPTY,‘所在機房‘)); M()->startTrans(); $com_info = M(‘company‘)->where(array(‘com_qyuserid‘=>$com_qyuserid))->find(); $com_id = $com_info[‘com_id‘]; $com_name = $com_info[‘com_name‘];
if(empty($com_info)) throw new Exception(ERROR_NOTFOUND_USER); $data = array( ‘com_id‘ => $com_id, ‘com_name‘ => $com_name, ‘type‘ => 1, ‘step‘ => 1, ‘poster‘ => self::$user
[‘name‘], ‘posttime‘ => self::$datetime, ‘eqroom_name‘ => D(‘EquipRoom‘)->get_eqroom_name($eqroom_id), ); $data = array_merge($data,$_POST); $agent_id = M(‘working_agent‘)->add($data); if(false===$agent_id) throw new Exception(ERROR_SUBMIT); $result = D(‘StepLogAgent‘)->next_step($agent_id,$remark); if(false===$result) throw new Exception(ERROR_SUBMIT); }catch(Exception $e){ M()->rollback(); $this->exception_handle($e); } M()->commit(); self::json(1,SUCCESS_SUBMIT); } private function exception_handle(Exception $e){ $msg = $e->getMessage(); $line = $e->getLine(); //**/print_r($e); echo M()->getLastSql(); $name = self::$user[‘name‘]; $time = self::$datetime; $sql = M()->getLastSql(); $log = $time." ".$name.":{$msg}({$line}) {$sql}"; self::mylog($log,‘Agent‘); self::json(0,"{$msg}({$line})"); }

一段PHP異常