⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 object.php

📁 Joomla!是一套获得过多个奖项的内容管理系统(Content Management System, CMS)。Joomla!采用PHP+MySQL数据库开发
💻 PHP
字号:
<?php/** * @version		$Id: object.php 10707 2008-08-21 09:52:47Z eddieajau $ * @package		Joomla.Framework * @subpackage	Base * @copyright	Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved. * @license		GNU/GPL, see LICENSE.php * Joomla! is free software. This version may have been modified pursuant * to the GNU General Public License, and as distributed it includes or * is derivative of works licensed under the GNU General Public License or * other free or open source software licenses. * See COPYRIGHT.php for copyright notices and details. *//** * Object class, allowing __construct in PHP4. * * @package		Joomla.Framework * @subpackage	Base * @since		1.5 */class JObject{	/**	 * An array of errors	 *	 * @var		array of error messages or JExceptions objects	 * @access	protected	 * @since	1.0	 */	var		$_errors		= array();	/**	 * A hack to support __construct() on PHP 4	 *	 * Hint: descendant classes have no PHP4 class_name() constructors,	 * so this constructor gets called first and calls the top-layer __construct()	 * which (if present) should call parent::__construct()	 *	 * @access	public	 * @return	Object	 * @since	1.5	 */	function JObject()	{		$args = func_get_args();		call_user_func_array(array(&$this, '__construct'), $args);	}	/**	 * Class constructor, overridden in descendant classes.	 *	 * @access	protected	 * @since	1.5	 */	function __construct() {}	/**	 * Returns a property of the object or the default value if the property is not set.	 *	 * @access	public	 * @param	string $property The name of the property	 * @param	mixed  $default The default value	 * @return	mixed The value of the property	 * @see		getProperties()	 * @since	1.5 	 */	function get($property, $default=null)	{		if(isset($this->$property)) {			return $this->$property;		}		return $default;	}	/**	 * Returns an associative array of object properties	 *	 * @access	public	 * @param	boolean $public If true, returns only the public properties	 * @return	array	 * @see		get()	 * @since	1.5 	 */	function getProperties( $public = true )	{		$vars  = get_object_vars($this);        if($public)		{			foreach ($vars as $key => $value)			{				if ('_' == substr($key, 0, 1)) {					unset($vars[$key]);				}			}		}        return $vars;	}	/**	 * Get the most recent error message	 *	 * @param	integer	$i Option error index	 * @param	boolean	$toString Indicates if JError objects should return their error message	 * @return	string	Error message	 * @access	public	 * @since	1.5	 */	function getError($i = null, $toString = true )	{		// Find the error		if ( $i === null) {			// Default, return the last message			$error = end($this->_errors);		}		else		if ( ! array_key_exists($i, $this->_errors) ) {			// If $i has been specified but does not exist, return false			return false;		}		else {			$error	= $this->_errors[$i];		}		// Check if only the string is requested		if ( JError::isError($error) && $toString ) {			return $error->toString();		}		return $error;	}	/**	 * Return all errors, if any	 *	 * @access	public	 * @return	array	Array of error messages or JErrors	 * @since	1.5	 */	function getErrors()	{		return $this->_errors;	}	/**	 * Modifies a property of the object, creating it if it does not already exist.	 *	 * @access	public	 * @param	string $property The name of the property	 * @param	mixed  $value The value of the property to set	 * @return	mixed Previous value of the property	 * @see		setProperties()	 * @since	1.5	 */	function set( $property, $value = null )	{		$previous = isset($this->$property) ? $this->$property : null;		$this->$property = $value;		return $previous;	}	/**	* Set the object properties based on a named array/hash	*	* @access	protected	* @param	$array  mixed Either and associative array or another object	* @return	boolean	* @see		set()	* @since	1.5	*/	function setProperties( $properties )	{		$properties = (array) $properties; //cast to an array		if (is_array($properties))		{			foreach ($properties as $k => $v) {				$this->$k = $v;			}			return true;		}		return false;	}	/**	 * Add an error message	 *	 * @param	string $error Error message	 * @access	public	 * @since	1.0	 */	function setError($error)	{		array_push($this->_errors, $error);	}	/**	 * Object-to-string conversion.	 * Each class can override it as necessary.	 *	 * @access	public	 * @return	string This name of this class	 * @since	1.5 	 */	function toString()	{		return get_class($this);	}	/**	 * Legacy Method, use {@link JObject::getProperties()}  instead	 *	 * @deprecated as of 1.5	 * @since 1.0	 */	function getPublicProperties()	{		return $this->getProperties();	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -