Smarty 是什么?
为什么使用?
用例和工作流程
语法比较
模板继承
最佳做法
速成教程
registerClass() — 在模板中注册一个类供使用
void registerClass(string class_name,
string class_impl);
只要安全策略没有另行规定,Smarty 允许您从模板访问静态类。如果启用了安全,则使用 registerClass()
注册的类便可供模板访问。
示例 14.36. 在模板中注册一个类供使用
<?php class Bar { $property = "hello world"; } $smarty = new Smarty(); $smarty->registerClass("Foo", "Bar");
{* Smarty will access this class as long as it's not prohibited by security *} {Bar::$property} {* Foo translates to the real class Bar *} {Foo::$property}
示例 14.37. 在模板中注册命名空间类供使用
<?php namespace my\php\application { class Bar { $property = "hello world"; } } $smarty = new Smarty(); $smarty->registerClass("Foo", "\my\php\application\Bar");
{* Foo translates to the real class \my\php\application\Bar *} {Foo::$property}
另请参见 registerObject()
和 安全。