Comparing changes: https://github.com/smarty-php/smarty/compare/v4.3.1...v4.4.1 It is noticeable that Smarty 4.3.1 does not officially support PHP 8.3. Is only supported with 4.4.0. Remark: During tests with Smarty 4.5.1, it was noticed that the following warning occurs: Deprecated: Using the unregistered function "function_exists" in a template is deprecated and will be removed in a future version. Use Smarty::registerPlugin to explicitly register a custom modifier. As of Smarty 5.X.X, templates must be revised again. The Smarty release 5.0.2 is already officially available. However, integration into FlatPress is not entirely trivial.
1.1 KiB
1.1 KiB
registerClass()
register a class for use in the templates
Description
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.
<?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}
<?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.