/framework/vendor/smarty2/lib/internals/core.smarty_include_php.php
PHP | 50 lines | 26 code | 7 blank | 17 comment | 8 complexity | 0d87e492eb18ec8b4fa492f2ac34c163 MD5 | raw file
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 21function 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?>