Exemple #1
0
    protected $data = array();
    public function set(Expression $e, $value)
    {
        $this->data[$e->getKey()] = $value;
    }
    public function get(Expression $e)
    {
        return $this->data[$e->getKey()];
    }
    // Custom functions
    protected static $sFunctions = array();
    protected $functions = array();
    public static function regSFunction($name, $foo)
    {
        static::$sFunctions[$name] = $foo;
    }
    public function regFunction($name, $foo)
    {
        $this->functions[$name] = $foo;
    }
    public function getFunction($name)
    {
        return isset($this->functions[$name]) ? $this->functions[$name] : (isset(static::$sFunctions[$name]) ? static::$sFunctions[$name] : null);
    }
}
IContext::regSFunction('trim', function ($str) {
    return trim($str);
});
IContext::regSFunction('concat', function () {
    return implode('', func_get_args());
});