Smarty::__set PHP Method

__set() public method

Calls the appropriate setter function. Issues an E_USER_NOTICE if no valid setter is found.
public __set ( string $name, mixed $value )
$name string property name
$value mixed parameter passed to setter
    public function __set($name, $value)
    {
        $allowed = array('template_dir' => 'setTemplateDir', 'config_dir' => 'setConfigDir', 'plugins_dir' => 'setPluginsDir', 'compile_dir' => 'setCompileDir', 'cache_dir' => 'setCacheDir');
        if (isset($allowed[$name])) {
            $this->{$allowed[$name]}($value);
        } else {
            trigger_error('Undefined property: ' . get_class($this) . '::$' . $name, E_USER_NOTICE);
        }
    }

Usage Example

 public function __set($name, $value)
 {
     if ($name == 'security') {
         if ($value) {
             $this->enableSecurity('Serendipity_Smarty_Security_Policy');
         } else {
             $this->disableSecurity();
         }
     } else {
         parent::__set($name, $value);
     }
 }