Seagull Framework HandlingError 如果在程序中进行出错处理
2010-01-25 09:45:34   来源:   评论:0 点击:

概述

Seagull提供了一些灵活的工具和大量的配置选项来帮助你处理应用程序中的错误。

  • 所有被挂起错误都是做PEAR错误对象处理
  • 返回一个错误对象而不是返回一个false值的好处是它可以保存发生错误的文件和行数信息,错误代码以及给系统和普通用户的信息。
  • 错误输出可以根据需要配置成输出到日志文件或者是屏幕
  • 如果错误超过了预设的极限会用eamil通知管理员
  • 如果配置属性production被设成true那么错误将不会输出到屏幕
  • 通过PEAR::Log可以将错误记录到不同的目标,可以通过配置界面来选择是保存到文件还是DB。
  • 使用SGL_Error对象来读取错误堆栈,提供检索和操作堆栈的基本方法。
  • 使用 SGL::raiseError(String $errorMsg, Constant SGL_ERROR_CONST [, Constant PEAR_ERROR_DIE ])来挂起一个错误。
  SGL::raiseError('There was a problem inserting the record', SGL_ERROR_NOAFFECTEDROWS);
  • 错误代码常量实例:
  define('SGL_ERROR_DBFAILURE',           -111);
  define('SGL_ERROR_DBTRANSACTIONFAILURE',-112);
  define('SGL_ERROR_BANNEDUSER',          -113);
  define('SGL_ERROR_NOFILE',              -114);
  define('SGL_ERROR_INVALIDFILEPERMS',    -115);
  define('SGL_ERROR_INVALIDSESSION',      -116);
  define('SGL_ERROR_INVALIDPOST',         -117);
  define('SGL_ERROR_INVALIDTRANSLATION',  -118);
  define('SGL_ERROR_FILEUNWRITABLE',      -119);
  • 要挂起一个会导致程序终止的极端错误,使用下列格式:
  SGL::raiseError('Cannot connect to DB, check your credentials, exiting ...',
      SGL_ERROR_DBFAILURE, PEAR_ERROR_DIE);

相关热词搜索:处理 程序

上一篇:Seagull Framework Caching 使用缓存
下一篇:Seagull Framework Logging 如何将事件记录到日志中

分享到: 收藏
频道总排行
频道本月排行