70% OFF : CLICK HERE TO BUY IT TODAY FOR ONLY $44.70 OR GET IT FREE VIA TRIALPAY  

PHP Demo Application - Source Code

/Framework/Model/Vendor/Smarty/libs/sysplugins/smarty_internal_compile_eval.php

<?php/**
* Smarty Internal Plugin Compile Eval
*
* Compiles the {eval} tag 
* @package Smarty
* @subpackage Compiler
* @author Uwe Tews
*/
/**
* Smarty Internal Plugin Compile Eval Class
*/ 
class Smarty_Internal_Compile_Eval extends Smarty_Internal_CompileBase {
    
/**
    * Compiles code for the {eval} tag
    * 
    * @param array $args array with attributes from parser
    * @param object $compiler compiler object
    * @return string compiled code
    */
    
public function compile($args$compiler)
    {
        
$this->compiler $compiler
        
$this->required_attributes = array('var');
        
$this->optional_attributes = array('assign'); 
        
// check and get attributes
        
$_attr $this->_get_attributes($args); 
        if (isset(
$_attr['assign'])) {
              
// output will be stored in a smarty variable instead of beind displayed
            
$_assign $_attr['assign'];
        }
  
        
// create template object
        
$_output "\$_template = new {$compiler->smarty->template_class}('string:'.".$_attr['var'].", \$_smarty_tpl->smarty, \$_smarty_tpl);"
        
//was there an assign attribute? 
        
if (isset($_assign)) {
            
$_output .= "\$_smarty_tpl->assign($_assign,\$_template->getRenderedTemplate());";
        } else {
            
$_output .= "echo \$_template->getRenderedTemplate();";
        } 
        return 
"<?php $_output ?>";
    } 
?>

PHP Demo Source Code Index