All pastes #594803 Raw Edit

k4st

public php v1 · immutable
#594803 ·published 2007-06-29 03:17 UTC
rendered paste body
public function __get($key = '') {		$ret = NULL;				$parts = array();		if(strpos($key, '.') !== FALSE) {			$parts = explode('.', $key);			$key = array_shift($parts);		}				$level = $this->__isset($key);		if($level !== FALSE) {			$ret = $this->vars[$level][$key];						// deal with sub objects :)			$i = -1;			while(isset($parts[++$i])) {								$key = $parts[$i];				if((is_array($ret) || $ret instanceof ArrayAccess) && isset($ret[$key])) {					$ret = $ret[$key];				} else if(is_object($ret)) {					if(isset($ret->$key)) {						$ret = $ret->$key;					} else {						$key = 'get'. camelize($key);						if(method_exists($ret, $key)) {							$ret = $ret->$key();						}					}				} else {					break;				}			}		}				return $ret;	}