Home  >  Article  >  Backend Development  >  smarty中assign()这个函数是如何定义的

smarty中assign()这个函数是如何定义的

PHP中文网
PHP中文网Original
2016-06-23 13:57:501911browse

谁能帖出这个函数的代码啊,以及它的原理


回复讨论(解决方案)

你可以用IDE查找一下。

smarty_internal_data.php  

/**     
* assigns a Smarty variable     
*     
* @param array|string $tpl_var the template variable name(s)     
* @param mixed        
$value   
the value to assign     
* @param boolean      
$nocache if true any output of this variable will be not cached     
* @param boolean $scope the scope the variable will have  (local,parent or root)     

*/    
public function assign($tpl_var, $value = null, $nocache = false)    
{        
if (is_array($tpl_var)) {            
foreach ($tpl_var as $_key => $_val) {                
if ($_key != '') {                    
if (isset($this->tpl_vars[$_key])) {                        
$this->tpl_vars[$_key]->value = $_val;                        
$this->tpl_vars[$_key]->nocache = $nocache;                    
} 
else 
{                        
$this->tpl_vars[$_key] = new Smarty_variable($_val, $nocache);                    
}                
}            
}        
} 
else 
{            
if ($tpl_var != '') 
{                
if (isset($this->tpl_vars[$tpl_var])) 
{                    
$this->tpl_vars[$tpl_var]->value = $value;                    
$this->tpl_vars[$tpl_var]->nocache = $nocache;                
} 
else 
{                    
$this->tpl_vars[$tpl_var] = new Smarty_variable($value, $nocache);                
}            
}        
}    
}


以上就是smarty中assign()这个函数是如何定义的的内容,更多相关内容请关注PHP中文网(www.php.cn)!


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn