ざっくりと雑なルーチンですが。
/*
* HTMLタグを直接assignで扱いたい時用
*
* @access protected
* @param no
* @return no
*/
public function assign_unsecure_raw($tpl_var, $value = null)
{
//
parent::assign($tpl_var, $value);
}
/*
* assignのセキュアラッパー
*
*/
public function assign($tpl_var, $value = null)
{
//
parent::assign($this->_esc($tpl_var), $this->_esc($value));
}
/*
* 内部処理用関数
*/
protected function _esc($str){
if(is_array($str)){
$ret = array();
foreach($str as $key => $val) {
$ret[$key] = $this->_esc($val);
}
return $ret;
}else{
if (is_null($str)) {
return null;
}
// else
return htmlspecialchars($str,ENT_QUOTES);
}
}