lithium\data\Entity::__get PHP Method

__get() public method

Overloading for reading inaccessible properties.
public __get ( string $name ) : mixed
$name string Property name.
return mixed Result.
    public function &__get($name)
    {
        if (isset($this->_relationships[$name])) {
            return $this->_relationships[$name];
        }
        if (isset($this->_updated[$name])) {
            return $this->_updated[$name];
        }
        $null = null;
        return $null;
    }

Usage Example

Beispiel #1
0
 /**
  * PHP magic method used when accessing fields as document properties, i.e. `$document->_id`.
  *
  * @param $name The field name, as specified with an object property.
  * @return mixed Returns the value of the field specified in `$name`, and wraps complex data
  *         types in sub-`Document` objects.
  */
 public function &__get($name)
 {
     if (strpos($name, '.')) {
         return $this->_getNested($name);
     }
     if (isset($this->_embedded[$name]) && !isset($this->_relationships[$name])) {
         throw new RuntimeException("Not implemented.");
     }
     $result =& parent::__get($name);
     if ($result !== null || array_key_exists($name, $this->_updated)) {
         return $result;
     }
     if ($field = $this->schema($name)) {
         if (isset($field['default'])) {
             $this->set(array($name => $field['default']));
             return $this->_updated[$name];
         }
         if (isset($field['array']) && $field['array'] && ($model = $this->_model)) {
             $this->_updated[$name] = $model::create(array(), array('class' => 'set', 'schema' => $this->schema(), 'pathKey' => $this->_pathKey ? $this->_pathKey . '.' . $name : $name, 'parent' => $this, 'model' => $this->_model, 'defaults' => false));
             return $this->_updated[$name];
         }
     }
     $null = null;
     return $null;
 }
All Usage Examples Of lithium\data\Entity::__get