registerClass() — register a class for use in the templates
void registerClass(string class_name,
string class_impl);
Smarty allows you to access static classes from templates as long as the
Security Policy does not
tell it otherwise. If security is enabled, classes registered with
registerClass()
are accessible to templates.
Example 14.36. Register class for use within a template
<?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}
Example 14.37. Register namespaced class for use within a template
<?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}
See also
registerObject()
,
and
Security.