bean = $bean; } /** * Magic Getter to make the bean properties available from * the $this-scope. * * @note this method returns a value, not a reference! * To obtain a reference unbox the bean first! * * @param string $prop property to get * * @return mixed */ public function __get( $prop ) { return $this->bean->$prop; } /** * Magic Setter. * Sets the value directly as a bean property. * * @param string $prop property to set value of * @param mixed $value value to set * * @return void */ public function __set( $prop, $value ) { $this->bean->$prop = $value; } /** * Isset implementation. * Implements the isset function for array-like access. * * @param string $key key to check * * @return boolean */ public function __isset( $key ) { return isset( $this->bean->$key ); } /** * Box the bean using the current model. * This method wraps the current bean in this model. * This method can be reached using FUSE through a simple * OODBBean. The method returns a RedBeanPHP Simple Model. * This is useful if you would like to rely on PHP type hinting. * You can box your beans before passing them to functions or methods * with typed parameters. * * @return SimpleModel */ public function box() { return $this; } /** * Unbox the bean from the model. * This method returns the bean inside the model. * * @return OODBBean */ public function unbox() { return $this->bean; } }