php基类调试类错误类

王朝php·作者佚名  2008-05-21
窄屏简体版  字體: |||超大  

<?php//// +----------------------------------------------------------------------+// | WHXBB

基类

|// +----------------------------------------------------------------------+// | Copyright (c) 2001 NetFish Software

|// |

|// | Author: whxbb(whxbb@21cn.com)

|// +----------------------------------------------------------------------+//// $Id: whxbb.class.php,v 0.1 2001/8/4 12:53:33 yf Exp $//// 禁止直接访问该页面if (basename($HTTP_SERVER_VARS['PHP_SELF']) == "whxbb.class.php") {

header("HTTP/1.0 404 Not Found");}// 调试标志,为1时,系统运行在调试状态define('WHXBB_DEBUG_FLAG', 0);// 出错代码的预定义// 忽略错误define('WHXBB_ERROR_IGNORE', 1);// 在页面显示错误define('WHXBB_ERROR_ECHO'

, 2);// 弹出错误警告并显示错误define('WHXBB_ERROR_ALERT' , 4);// 停止程序的运行define('WHXBB_ERROR_DIE'

, 8);// 返回上页define('WHXBB_ERROR_RETURN', 16);// 跳到指定页define('WHXBB_ERROR_GOTO', 32);/*** Purpose*

基类, 在该类中封装了一些常用的方法** @author

: whxbb(whxbb@21cn.com)* @version : 0.1* @date

:

2001/12/4*/class WHXBB{

/**

* 调试标志

* @access protected

*/

var $_debug;

/**

* 数据库连接标志

* @access protect

*/

var $_conn;

function WHXBB()

{

// 数据库连接标志

global $_conn;

if (!is_resource($conn))

die("数据库连接错误");

$this->_conn = $conn;

$this->_debug = WHXBB_DEBUG_FLAG;

}

/**

* 处理字符串

* @param $str 要处理的字符串

* @param $act in 将'替换成’out 把’替换成'

* @access public

*/

function OperateString(&$str, $act)

{

if($act == 'in')

$str = str_replace("'", "\’", $str);

if($act == 'out')

$str = str_replace("\’", "'", $str);

}

/**

* 判断一个变量是否为错误对象

*

* @param

$data

要判断的变量

* @access

public

* @return

bool

是 true 不是

false

*/

function isError($data) {

return (bool)(is_object($data) &&

(get_class($data) == "whxbb_error" ||

is_subclass_of($data, "whxbb_error")));

}

/**

* 判断一个变量是否为分页对象

*

* @param

$data

the value to test

* @access

public

* @return

bool

true if $data is an Pager

*/

function isPager($data) {

return (bool)(is_object($data) &&

(get_class($data) == "pager" ||

is_subclass_of($data, "pager")));

}}/*** 调试类** Purpose**

程序调试用** @author

: wxhbb(whxbb@21cn.com)* @version : 0.1* @date

:

2001/8/4*/class WHXBB_Debug Extends WHXBB{

function WHXBB_Debug($msg)

{

$this->WHXBB();

if($this->_debug == 1)

{

echo "

<br>WHXBB Debug >>> $msg<br>

";

}

}}/*** Purpose* 错误处理(触发错误,显示错误)** @author

: whxbb(whxbb@21cn.com)* @version : 0.1* @date

:

2001/8/4*/class WHXBB_Error extends WHXBB{

/**

* 错误信息

* @access protected

*/

var $_errNo;

/**

* 错误代码

* @access protected

*/

var $_errMsg;

/** 报错方式 参见"出错代码的预定义" */

var $_reportMethod;

/**

* 构造一个错误对象

* @param $errMsg

错误信息, 错误的字符描述

* @param $errNo

错误代码, 错误的代码

* @param $reportMethod 报错方式,参见"出错代码的预定义"

* @param $param1 参数一,如跳转到指定页面时页面的url

* @param $param2 参数二 保留

* @access public

*/

function WHXBB_Error($errMsg, $errNo, $reportMethod = WHXBB_ERROR_IGNORE, $param1 = '', $param2 = '')

{

$this->WHXBB();

$this->_errMsg = $errMsg;

$this->_errNo = $errNo;

$this->_reportMethod = $reportMethod;

switch($reportMethod)

{

case WHXBB_ERROR_IGNORE:

break;

case WHXBB_ERROR_ECHO:

echo $errMsg;

break;

case WHXBB_ERROR_ALERT:

JS::Alert($errMsg);

break;

case WHXBB_ERROR_DIE:

$this->Close();

exit;

break;

case WHXBB_ERROR_DIE + WHXBB_ERROR_ALERT:

JS::Alert($errMsg);

$this->Close();

exit;

break;

case WHXBB_ERROR_DIE + WHXBB_ERROR_ECHO:

echo $errMsg;

$this->Close();

exit;

break;

case WHXBB_ERROR_ALERT + WHXBB_ERROR_RETURN:

JS::ALert($errMsg);

JS::Back();

break;

case WHXBB_ERROR_RETURN:

JS::Back();

break;

case WHXBB_ERROR_GOTO:

JS::Goto($param1);

break;

case WHXBB_ERROR_GOTO + WHXBB_ERROR_ALERT:

JS::ALert($errMsg);

JS::Goto($param1);

break;

}

new WHXBB_Debug($errNo.":".$errMsg);

}

/**

* 得到错误对象的错误信息

*/

function GetMsg()

{

return $this->_errMsg;

}

/**

* 得到错误对象的错误代买

*/

function GetNo()

{

return $this->_errNo;

}}?>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航