如何在 fatfreeframework 模板中使用 class->function()
How to use class->function() in fatfreeframework template
我有一个 class 如下。
class myClass {
//Strip string
function strip($str) {
return $str;
}
}
在我的代码中,我调用模板如下。
echo \Template::instance()->render('admin/settings.html');
现在如何将 class 函数应用于模板中的变量?我想做的是这样的。
{{ myClass->strip((@value['setting__Setting'])) }}
这实际上不起作用。
使用静态函数?
<?php
class myClass {
//Strip string
public static function strip($str) {
return $str;
}
}
在模板中调用静态函数:
{{ \myClass::strip((@value['setting__Setting'])) }}
您实际上可以创建一个真正调用您的 class 的匿名函数,因此基本上您将使用您的 class 方法,但方式很好!
首先,将您的 class 分配给一个 HIVE 变量,您可以在 class 中的任何地方这样做(__construct
推荐)
$this->f3->set('_strip',function ($a){
return $this->strip($a);
});
现在您可以像这样在模板中调用该方法,
{{ @_strip('Hello World') }}
我有一个 class 如下。
class myClass {
//Strip string
function strip($str) {
return $str;
}
}
在我的代码中,我调用模板如下。
echo \Template::instance()->render('admin/settings.html');
现在如何将 class 函数应用于模板中的变量?我想做的是这样的。
{{ myClass->strip((@value['setting__Setting'])) }}
这实际上不起作用。
使用静态函数?
<?php
class myClass {
//Strip string
public static function strip($str) {
return $str;
}
}
在模板中调用静态函数:
{{ \myClass::strip((@value['setting__Setting'])) }}
您实际上可以创建一个真正调用您的 class 的匿名函数,因此基本上您将使用您的 class 方法,但方式很好!
首先,将您的 class 分配给一个 HIVE 变量,您可以在 class 中的任何地方这样做(__construct
推荐)
$this->f3->set('_strip',function ($a){
return $this->strip($a);
});
现在您可以像这样在模板中调用该方法,
{{ @_strip('Hello World') }}