PhpRiot
Follow phpriot on Twitter
Sponsored Link
Become Zend Certified

Prepare for the ZCE exam using our quizzes (web or iPad/iPhone). More info...


When you're ready get 7.5% off your exam voucher using voucher CJQNOV23 at the Zend Store
Free iPad/iPhone App
Available on the App Store

  • PHP manual
  • Zend Framework manual
  • Smarty manual
  • PHP articles
  • PHP training

Name

registerResource() — dynamically register resources

Description

void registerResource(string name,
                      array resource_callbacks);

Use this to dynamically register a resource plugin with Smarty. Pass in the name of the resource and the array of PHP functions implementing it. See template resources for more information on how to setup a function for fetching templates.

Technical Note

A resource name must be at least two characters in length. One character resource names will be ignored and used as part of the file path, such as $smarty->display('c:/path/to/index.tpl');

  • The array resource_callabcks must have 4 elements for the respective source, timestamp, secure and trusted callback of the resource.

  • Each element defines the PHP callback. it can be either:

    • A string containing the function name

    • An array of the form array($object, $method) with &$object being a reference to an object and $method being a string containing the method-name

    • An array of the form array($class, $method) with $class being the class name and $method being a method of the class.

Example 186. registerResource()



<?php
$smarty
->registerResource('db', array(
                                
'db_get_template',
                                
'db_get_timestamp',
                                
'db_get_secure',
                                
'db_get_trusted')
                                );
?>

   

Example 187. registerResource() using object methods



<?php
$smarty
->registerResource('db', array(
                                array(
$obj,'db_get_template'),
                                array(
$obj,'db_get_timestamp'),
                                array(
$obj,'db_get_secure'),
                                array(
$obj,'db_get_trusted')
                                )
                          );
?>

   

See also unregisterResource() and the template resources section.

Smarty Template Engine