public function &get($property)
    {
        if (!strlen((string)$property)) {
            throw new InvalidArgumentException('Cannot get an empty property');
        }

        $value = null;
        $method = static::_accessor($property, 'get');

        if (isset($this->_properties[$property])) {
            $value =& $this->_properties[$property];
        }

        if ($method) {
            $result = $this->{$method}($value);

            return $result;
        }

        return $value;
    }
public function &get($property)
    {
        if (!strlen((string)$property)) {
            throw new InvalidArgumentException('Cannot get an empty property');
        }

        $value = null;
        $method = static::_accessor($property, 'get');

        if (isset($this->_properties[$property])) {
            $value =& $this->_properties[$property];
        }

        if ($method) {
            $result = $this->{$method}($value);

            return $result;
        }

        return $value;
    }
public function & get ( $ property ) { if ( ! strlen ( ( string ) $ property ) ) { throw new InvalidArgumentException ( 'Cannot get an empty property' ) ; } $ value = null ; $ method = static :: _accessor ( $ property , 'get' ) ; if ( isset ( $ this -> _properties [ $ property ] ) ) { $ value = & $ this -> _properties [ $ property ] ; } if ( $ method ) { $ result = $ this -> { $ method } ( $ value ) ; return $ result ; } return $ value ; }
Returns the value of a property by name

@param string $property the name of the property to retrieve
@return mixed
@throws \InvalidArgumentException if an empty property name is passed
Returns the value of a property by name