没什么功能

源代码在线查看: object.php

软件大小: 6025 K
上传用户: rylzll
关键词:
下载地址: 免注册下载 普通下载 VIP

相关代码

								/**				 * @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();					}				}							

相关资源