smarty/internals/core.smarty_include_php.php
changeset 0 c63de9eb7045
equal deleted inserted replaced
-1:000000000000 0:c63de9eb7045
       
     1 <?php
       
     2 /**
       
     3  * Smarty plugin
       
     4  * @package Smarty
       
     5  * @subpackage plugins
       
     6  */
       
     7 
       
     8 /**
       
     9  * called for included php files within templates
       
    10  *
       
    11  * @param string $smarty_file
       
    12  * @param string $smarty_assign variable to assign the included template's
       
    13  *               output into
       
    14  * @param boolean $smarty_once uses include_once if this is true
       
    15  * @param array $smarty_include_vars associative array of vars from
       
    16  *              {include file="blah" var=$var}
       
    17  */
       
    18 
       
    19 //  $file, $assign, $once, $_smarty_include_vars
       
    20 
       
    21 function smarty_core_smarty_include_php($params, &$smarty)
       
    22 {
       
    23     $_params = array('resource_name' => $params['smarty_file']);
       
    24     require_once(SMARTY_CORE_DIR . 'core.get_php_resource.php');
       
    25     smarty_core_get_php_resource($_params, $smarty);
       
    26     $_smarty_resource_type = $_params['resource_type'];
       
    27     $_smarty_php_resource = $_params['php_resource'];
       
    28 
       
    29     if (!empty($params['smarty_assign'])) {
       
    30         ob_start();
       
    31         if ($_smarty_resource_type == 'file') {
       
    32             $smarty->_include($_smarty_php_resource, $params['smarty_once'], $params['smarty_include_vars']);
       
    33         } else {
       
    34             $smarty->_eval($_smarty_php_resource, $params['smarty_include_vars']);
       
    35         }
       
    36         $smarty->assign($params['smarty_assign'], ob_get_contents());
       
    37         ob_end_clean();
       
    38     } else {
       
    39         if ($_smarty_resource_type == 'file') {
       
    40             $smarty->_include($_smarty_php_resource, $params['smarty_once'], $params['smarty_include_vars']);
       
    41         } else {
       
    42             $smarty->_eval($_smarty_php_resource, $params['smarty_include_vars']);
       
    43         }
       
    44     }
       
    45 }
       
    46 
       
    47 
       
    48 /* vim: set expandtab: */
       
    49 
       
    50 ?>