Вход Регистрация
Файл: library/XenForo/Template/Compiler/Function/Helper.php
Строк: 68
<?php

/**
* Class to handle compiling template function calls for "helper".
*
* @package XenForo_Template
*/
class XenForo_Template_Compiler_Function_Helper implements XenForo_Template_Compiler_Function_Interface
{
    
/**
    * Compile the function and return PHP handle it.
    *
    * @param XenForo_Template_Compiler The invoking compiler
    * @param string                 Name of the function called
    * @param array                  Arguments to the function (should have at least 1)
    * @param array                  Compilation options
    *
    * @return string
    */
    
public function compile(XenForo_Template_Compiler $compiler$function, array $arguments, array $options)
    {
        if (
count($arguments) < 1)
        {
            throw 
$compiler->getNewCompilerArgumentException();
        }

        
$noEscapeOptions array_merge($options, array('varEscape' => false));

        
$functionCompiled $compiler->compileAndCombineSegments(array_shift($arguments), $noEscapeOptions);

        
$outputArgs = array();
        foreach (
$arguments AS $argument)
        {
            
$outputArgs[] = $compiler->compileAndCombineSegments($argument$noEscapeOptions);
        }
        
$argumentsCompiled $compiler->buildNamedParamCode($outputArgs);

        return 
'XenForo_Template_Helper_Core::callHelper(' $functionCompiled ', ' $argumentsCompiled ')';
    }
}
Онлайн: 0
Реклама