亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? paterrormanager.php

?? Joomla!是一套獲得過多個獎項的內容管理系統(Content Management System, CMS)。Joomla!采用PHP+MySQL數據庫開發
?? PHP
?? 第 1 頁 / 共 2 頁
字號:
<?php/** * patErrorManager main error management class used by pat tools for the * application-internal error management. Creates patError objects for * any errors for precise error management. * *	$Id: patErrorManager.php 10871 2008-08-30 07:30:33Z willebil $ * * @package	patError *//** * error definition: illegal options. */define( 'PATERRORMANAGER_ERROR_ILLEGAL_OPTIONS', 1 );/** * error definition: callback function does not exist. */define( 'PATERRORMANAGER_ERROR_CALLBACK_NOT_CALLABLE', 2 );/** * error definition: illegal error handling mode. */define( 'PATERRORMANAGER_ERROR_ILLEGAL_MODE', 3 );/** * global definitions needed to keep track of things when calling the patErrorManager * static methods. */$GLOBALS['_pat_errorHandling']	=	array(											E_NOTICE	=> array( 'mode' => 'echo' ),											E_WARNING	=> array( 'mode' => 'echo' ),											E_ERROR		=> array( 'mode' => 'die' )										);/** * available error levels * Stored in a variable to keep them flexible */$GLOBALS['_pat_errorLevels']	=	array(											E_NOTICE	=> 'Notice',											E_WARNING	=> 'Warning',											E_ERROR		=> 'Error'										);/** * error class names * Stored in a variable allows to change during runtime */$GLOBALS['_pat_errorClass']	=	'patError';/** * ignore errors * Store error-codes that will be ignored forever */$GLOBALS['_pat_errorIgnores']	=	array();/** * expects errors * Store error-codes that will be ignored once */$GLOBALS['_pat_errorExpects']	=	array();/** * patErrorManager main error management class used by pat tools for the * application-internal error management. Creates patError objects for * any errors for precise error management. * * @static * @package	patError * @version	0.3 * @author	gERD Schaufelberger <gerd@php-tools.net> * @author	Stephan Schmidt <schst@php-tools.net> * @license	LGPL * @link	http://www.php-tools.net * @todo	implement ignoreError() to ignore errrors with a certain code * @todo	implement expectError() to ignore an error with a certain code only once. */class patErrorManager{	/**	* method for checking whether the return value of a pat application method is a pat	* error object.	*	* @static	* @access	public	* @param	mixed	&$object	* @return	boolean $result	True if argument is a patError-object, false otherwise.	*/    function isError( &$object )    {		if( !is_object( $object ) )		{			return false;		}		if( strtolower(get_class( $object )) != strtolower( $GLOBALS['_pat_errorClass'] ) && !is_subclass_of( $object, $GLOBALS['_pat_errorClass'] ) )		{			return false;		}        return  true;    }	/**	* wrapper for the {@link raise()} method where you do not have to specify the	* error level - a {@link patError} object with error level E_ERROR will be returned.	*	* @static	* @access	public	* @param	string	$code	The application-internal error code for this error	* @param	string	$msg	The error message, which may also be shown the user if need be.	* @param	mixed	$info	Optional: Additional error information (usually only developer-relevant information that the user should never see, like a database DSN).	* @return	object	$error	The configured patError object	* @see		raise()	* @see		patError	*/	function &raiseError( $code, $msg, $info = null )	{		return patErrorManager::raise( E_ERROR, $code, $msg, $info );	}	/**	* wrapper for the {@link raise()} method where you do not have to specify the	* error level - a {@link patError} object with error level E_WARNING will be returned.	*	* @static	* @access	public	* @param	string	$code	The application-internal error code for this error	* @param	string	$msg	The error message, which may also be shown the user if need be.	* @param	mixed	$info	Optional: Additional error information (usually only developer-relevant information that the user should never see, like a database DSN).	* @return	object	$error	The configured patError object	* @see		raise()	* @see		patError	*/	function &raiseWarning( $code, $msg, $info = null )	{		return patErrorManager::raise( E_WARNING, $code, $msg, $info );	}	/**	* wrapper for the {@link raise()} method where you do not have to specify the	* error level - a {@link patError} object with error level E_NOTICE will be returned.	*	* @static	* @access	public	* @param	string	$code	The application-internal error code for this error	* @param	string	$msg	The error message, which may also be shown the user if need be.	* @param	mixed	$info	Optional: Additional error information (usually only developer-relevant information that the user should never see, like a database DSN).	* @return	object	$error	The configured patError object	* @see		raise()	* @see		patError	*/	function &raiseNotice( $code, $msg, $info = null )	{		return patErrorManager::raise( E_NOTICE, $code, $msg, $info );	}	/**	* creates a new patError object given the specified information.	*	* @access	public	* @param	int		$level	The error level - use any of PHP's own error levels for this: E_ERROR, E_WARNING, E_NOTICE, E_USER_ERROR, E_USER_WARNING, E_USER_NOTICE.	* @param	string	$code	The application-internal error code for this error	* @param	string	$msg	The error message, which may also be shown the user if need be.	* @param	mixed	$info	Optional: Additional error information (usually only developer-relevant information that the user should never see, like a database DSN).	* @return	mixed	$error	The configured patError object or false if this error should be ignored	* @see		patError	* @todo		implement 'simple' mode that returns just false (BC for patConfiguration)	* @todo		either remove HTML tags and entities from output or test for enviroment!!! <b></b> in shell is ugly!	*/    function &raise( $level, $code, $msg, $info = null )    {		// ignore this error?		if( in_array( $code, $GLOBALS['_pat_errorIgnores'] ) )		{			return false;		}		// this error was expected		if( !empty( $GLOBALS['_pat_errorExpects'] ) )		{			$expected =	array_pop( $GLOBALS['_pat_errorExpects'] );			if( in_array( $code, $expected ) )			{				return false;			}		}		// need patError		$class	=	$GLOBALS['_pat_errorClass'];		if( !class_exists( $class ) )		{			include_once dirname( __FILE__ ) . '/'. $class .'.php';		}		// build error object		$error			=&	new	$class( $level, $code, $msg, $info );		// see what to do with this kind of error		$handling	=	patErrorManager::getErrorHandling( $level );		$function	=	'handleError' . ucfirst( $handling['mode'] );		if (is_callable( array( 'patErrorManager', $function ) )) {			return patErrorManager::$function( $error, $handling );		} else {			// This is required to prevent a very unhelpful white-screen-of-death			jexit(				'JError::raise -> Static method JError::' . $function . ' does not exist.' .				' Contact a developer to debug' .				'<br /><strong>Error was</strong> ' .				'<br />' . $error->getMessage()			);		}    }	/**	* register a new error level	*	* This allows you to add custom error levels to the built-in	* - E_NOTICE	* - E_WARNING	* - E_NOTICE	*	* You may use this level in subsequent calls to raise().	* Error handling will be set to 'ignore' for the new level, you	* may change it by using setErrorHandling().	*	* You could be using PHP's predefined constants for error levels	* or any other integer value.	*	* @access	public	* @param	integer	error level	* @param	string	human-readable name	* @return	boolean	true on success; false if the level already has been registered	* @see		raise(), setErrorHandling()	* @link		http://www.php.net/manual/en/function.error-reporting.php	*/	function registerErrorLevel( $level, $name )	{		if( isset( $GLOBALS['_pat_errorLevels'][$level] ) )		{			return false;		}		$GLOBALS['_pat_errorLevels'][$level]	=	$name;		patErrorManager::setErrorHandling( $level, 'ignore' );		return	true;	}	/**	* sets the way the patErrorManager will handle teh different error levels. Use this	* if you want to override the default settings.	*	* Error handling modes:	* - ignore	* - trigger	* - verbose	* - echo	* - callback	* - die	*	* You may also set the error handling for several modes at once using PHP's bit operations.	* Examples:	* - E_ALL = Set the handling for all levels	* - E_ERROR | E_WARNING = Set the handling for errors and warnings	* - E_ALL ^ E_ERROR = Set the handling for all levels except errors	*	* @static	* @access	public	* @param	int		$level		The error level for which to set the error handling	* @param	string	$mode		The mode to use for the error handling.	* @param	mixed	$options	Optional: Any options needed for the given mode.	* @return	mixed	$result		True on success, or a patError object if failed.	* @see		getErrorHandling()	*/    function setErrorHandling( $level, $mode, $options = null )    {		$levels	=	$GLOBALS['_pat_errorLevels'];		$function	=	'handleError' . ucfirst( $mode );		if( !is_callable( array( 'patErrorManager', $function ) ) )		{			return patErrorManager::raiseError( E_ERROR,												'patErrorManager:' . PATERRORMANAGER_ERROR_ILLEGAL_MODE,												'Error Handling mode is not knwon',												'Mode: ' .  $mode . ' is not implemented.'												);		}		foreach( $levels as $eLevel => $eTitle )		{			if( ( $level & $eLevel ) != $eLevel )			{				continue;			}			// set callback options			if( $mode == 'callback' )			{				if( !is_array( $options ) )				{					return patErrorManager::raiseError( E_ERROR,														'patErrorManager:' . PATERRORMANAGER_ERROR_ILLEGAL_OPTIONS,														'Options for callback not valid'														);				}				if( !is_callable( $options ) )				{					$tmp	=	array( 'GLOBAL' );					if( is_array( $options ) )					{						$tmp[0]	=	$options[0];						$tmp[1]	=	$options[1];					}					else					{						$tmp[1]	=	$options;					}					return patErrorManager::raiseError(	E_ERROR,														'patErrorManager:' . PATERRORMANAGER_ERROR_CALLBACK_NOT_CALLABLE,														'Function is not callable',														'Function:' . $tmp[1]  . ' scope ' . $tmp[0] . '.'														);				}			}			// save settings			$GLOBALS['_pat_errorHandling'][$eLevel]	=	array( 'mode' => $mode );			if( $options	!= null )			{				$GLOBALS['_pat_errorHandling'][$eLevel]['options']	=	$options;			}		}        return  true;    }	/**	* retrieves the current error handling settings for the specified error level.	*	* @access	public	* @param	int		$level		The error level to retrieve. This can be any of PHP's own error levels, e.g. E_ALL, E_NOTICE...	* @return	array	$handling	All error handling details	*/    function getErrorHandling( $level )    {		return $GLOBALS['_pat_errorHandling'][$level];    }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区三区在线观看免费 | 91精品国产欧美一区二区18| 91精品国产综合久久精品app| 久久久精品综合| 同产精品九九九| 97se亚洲国产综合自在线| 精品久久久久久最新网址| 一区二区三区日韩精品视频| 国产成人亚洲精品青草天美| 欧美绝品在线观看成人午夜影视 | 欧美精品 日韩| 综合久久综合久久| 国产在线麻豆精品观看| 欧美日韩你懂得| 亚洲情趣在线观看| 99久久久无码国产精品| 久久免费视频一区| 奇米影视在线99精品| 欧美日韩在线不卡| 亚洲国产日韩a在线播放性色| kk眼镜猥琐国模调教系列一区二区| 精品国产一区二区三区久久久蜜月| 亚洲国产成人av| 欧美性感一区二区三区| 亚洲品质自拍视频网站| 91视频观看视频| 亚洲精品日产精品乱码不卡| va亚洲va日韩不卡在线观看| 国产精品久久久久久久蜜臀| 国产成人免费av在线| 国产欧美日韩中文久久| 国产高清不卡二三区| 国产女人18毛片水真多成人如厕 | 视频精品一区二区| 欧美天天综合网| 三级不卡在线观看| 日韩一级免费观看| 久久精品免费观看| 国产女同互慰高潮91漫画| 成人国产免费视频| 亚洲综合免费观看高清完整版| 91麻豆免费视频| 亚洲成人一区二区在线观看| 欧美三片在线视频观看| 日本在线不卡视频一二三区| 日韩欧美精品在线视频| 韩国成人精品a∨在线观看| 国产欧美中文在线| 99久久精品国产毛片| 亚洲精品国产视频| 日韩限制级电影在线观看| 久久精品国产久精国产| 国产性天天综合网| 色婷婷av一区| 日韩精品五月天| 久久久久久久国产精品影院| 成人av小说网| 日韩中文字幕av电影| 精品久久国产字幕高潮| 99久久久无码国产精品| 日韩专区在线视频| 国产欧美一区在线| 欧美主播一区二区三区美女| 久久精品久久99精品久久| 国产精品美女久久久久aⅴ| 91精品办公室少妇高潮对白| 捆绑调教美女网站视频一区| 国产精品久久久久婷婷| 正在播放一区二区| 波多野结衣在线一区| 日韩和欧美一区二区| 中文字幕电影一区| 日韩视频在线观看一区二区| 成人高清免费在线播放| 日韩精品午夜视频| 亚洲精品免费一二三区| 久久综合狠狠综合久久综合88 | 国产盗摄精品一区二区三区在线 | 国产精品一区二区三区四区| 亚洲午夜久久久久久久久久久| 久久久影院官网| 欧洲一区二区av| 成人小视频免费在线观看| 日本欧美在线看| 亚洲午夜精品网| 中文字幕一区二区三区精华液| 欧美久久久一区| 91国偷自产一区二区使用方法| 国产精品一级片在线观看| 日韩1区2区日韩1区2区| 亚洲欧美日韩小说| 中文字幕乱码亚洲精品一区| 欧美大胆一级视频| 在线91免费看| 欧美无砖专区一中文字| 91色porny在线视频| 成人av在线一区二区| 激情av综合网| 天堂蜜桃一区二区三区| 亚洲一区二区三区三| 亚洲欧美一区二区三区孕妇| 国产免费久久精品| 久久久久久久久久久黄色| 欧美一级精品在线| 欧美一级黄色大片| 4hu四虎永久在线影院成人| 在线看国产一区| 欧美在线999| 在线精品视频小说1| 91国偷自产一区二区开放时间| 91免费看`日韩一区二区| 成人高清免费在线播放| 91蜜桃网址入口| 欧美亚洲另类激情小说| 欧美亚一区二区| 欧美日韩不卡一区二区| 欧美日韩大陆一区二区| 欧美日韩一卡二卡三卡| 欧美一级黄色录像| 精品国产亚洲在线| 国产女人18水真多18精品一级做| 日本一二三不卡| 亚洲猫色日本管| 亚洲一区二区在线观看视频| 亚洲国产视频在线| 全国精品久久少妇| 国产老女人精品毛片久久| 成人黄色777网| 91浏览器在线视频| 欧美日韩国产一级二级| 日韩手机在线导航| 中文无字幕一区二区三区| 亚洲欧美激情插| 日本成人中文字幕| 国产91在线|亚洲| 色激情天天射综合网| 日韩欧美一级二级三级| 国产欧美视频一区二区| 亚洲一区电影777| 精品影院一区二区久久久| 国产成人精品免费| 欧美性色综合网| 国产视频视频一区| 亚洲图片欧美一区| 国产真实精品久久二三区| 91网页版在线| 日韩亚洲电影在线| 亚洲欧美二区三区| 精品中文av资源站在线观看| 95精品视频在线| 精品少妇一区二区三区免费观看| 国产精品色婷婷| 青青草97国产精品免费观看无弹窗版 | 国产精品青草综合久久久久99| 亚洲人成影院在线观看| 老司机精品视频在线| 91亚洲男人天堂| 久久久久久久久岛国免费| 亚洲国产精品一区二区尤物区| 国产精品自拍av| 欧美日韩成人综合| 中文字幕人成不卡一区| 久久国产精品72免费观看| 色综合久久综合中文综合网| 精品国产乱码久久久久久老虎| 亚洲男人天堂一区| 丁香六月综合激情| 日韩网站在线看片你懂的| 亚洲与欧洲av电影| av午夜精品一区二区三区| 久久久久国产精品麻豆ai换脸| 五月婷婷综合激情| 91高清在线观看| 国产精品久久久久久久第一福利| 国精产品一区一区三区mba桃花| 欧美人妖巨大在线| 一区二区三区产品免费精品久久75| 国产一区二区三区最好精华液| 欧美一区午夜视频在线观看| 亚洲一区视频在线| 色伊人久久综合中文字幕| 国产精品乱码妇女bbbb| 国产精品资源网| 久久嫩草精品久久久精品一| 久久99热99| 精品毛片乱码1区2区3区| 日产国产高清一区二区三区| 欧美中文字幕亚洲一区二区va在线| 亚洲免费观看高清完整| 大尺度一区二区| 中文字幕欧美三区| 国产sm精品调教视频网站| 国产调教视频一区| 成人激情视频网站| 国产精品福利影院| 91热门视频在线观看| 亚洲精品国产a久久久久久 | 亚洲一卡二卡三卡四卡五卡| 色老汉av一区二区三区| 亚洲一区二区av电影|