一段PHP异常
这是我写的一段代码,里面通过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异常的更多相关文章
- 窗体Showmedol 遇到的奇怪异常-->进阶问题
procedure SetTransparentForm (popupFrm:TForm;Color:TColor;AlphaBlendValue:Integer); var FrmTranspare ...
- java.util.ConcurrentModificationException 异常问题详解
环境:JDK 1.8.0_111 在Java开发过程中,使用iterator遍历集合的同时对集合进行修改就会出现java.util.ConcurrentModificationException异常, ...
- Java中的异常简介
Java中异常的分类 Java中的异常机制是针对正常运行程序的一个必要补充,一般来说没有加入异常机制,程序也能正常运营,但是,由于入参.程序逻辑的严谨度,总会有期望之外的结果生成,因此加入异常机制的补 ...
- java异常,异常处理,异常类 关键字:throws 和 throw 自定义的异常类
package cn.kecheng; import java.util.Scanner; /**异常:异常是指在程序的运行过程中所发生的不正常的情况,它会中断正在运行的程序 异常处理机制:java中 ...
- 第33节:Java面向对象中的异常
Java中的异常和错误 Java中的异常机制,更好地提升程序的健壮性 throwable为顶级,Error和Exception Error:虚拟机错误,内存溢出,线程死锁 Exception:Runt ...
- Java异常(Exception)
Java异常:运行期出现的错误 1. Java异常是Java提供的用于处理程序中错误的一种机制: 2. 错误指的是程序运行期间发生的异常事件,如除零溢出.数组下标越界.读取的文件不存在.... 3. ...
- python——异常except语句用法与引发异常
except: #捕获所有异常 except: <异常名>: #捕获指定异常 except:<异常名1,异常名2):捕获异常1或者异常2 except:<异常名>,< ...
- 转 Python3 错误和异常/ Python学习之错误调试和测试
########sample 0 https://www.cnblogs.com/Simon-xm/p/4073028.html except: #捕获所有异常 except: <异常名> ...
- 用Go语言异常机制模拟TryCatch异常捕捉
有的同学看到Go和TryCatch一起出现,心里可能会说,难道Go语言升级了,加入了try...catch语句.哈哈,其实Go语言从创建之初就没打算加入try...catch语句,因为创建Go的那帮大 ...
随机推荐
- review16
java.lang包中的Math类包含许多用来进行科学计算的方法,这些方法可以直接通过类名调用. Math类中还有两个静态常量E和PI,分别表示自然对数和圆周率. 以下是Math类的常用方法 pulb ...
- 利用CocoaLumberjack框架+XcodeColors插件,调试输出有彩色的信息
效果如下: 步骤: 1. 安装Xcode插件:XcodeColors(方法请参考这里) 2. 为项目添加 CocoaLumberjack 框架(方法请参考这里) 3. 添加代码 (1) 为项目添加 p ...
- IDEA配置JavaWeb项目Artifacts
- 20165210 Java第五周学习总结
20165210 Java第五周学习总结 教材学习内容 - 第七章学习总结 内部类: 内部类的外嵌类的成员变量在内部类中仍然有效,内部类中的方法也可以调用外嵌类中的方法. 内部类的类体中不可以声明类变 ...
- uva11991(二分查找或map的应用)
11991 - Easy Problem from Rujia Liu? Time limit: 1.000 seconds Easy Problem from Rujia Liu? Though R ...
- 开发mis系统用到的技术
1. b/s架构:就broser/server,浏览器/服务器的说法.服务器端要运行tomcat,提供链接数据库服务供java代码读写数据,这个可以在eclipse中配置运行.浏览器则解释jsp或ht ...
- lower_bound()函数与quicksort()函数的简单掌握
lower_bound 这个序列中可能会有很多重复的元素,也可能所有的元素都相同,为了充分考虑这种边界条件,STL中的lower_bound算法总体上是才用了二分查找的方法,但是由于是查找序列中的第一 ...
- shell while的用法
1. #!/bin/shint=1while (( "$int < 10" ))doecho "$int"let "int++"don ...
- Unity Shader实现描边效果
http://gad.qq.com/article/detail/28346 描边效果是游戏里面非常常用的一种效果,一般是为了凸显游戏中的某个对象,会给对象增加一个描边效果.本篇文章和大家介绍下利用S ...
- Wireshark图解教程(简介、抓包、过滤器)【转载】
原文网址:http://blog.sina.com.cn/s/blog_5d527ff00100dwph.html Wireshark是世界上最流行的网络分析工具.这个强大的工具可以捕捉网络中的数据, ...