Heim  >  Artikel  >  Backend-Entwicklung  >  有关在smarty中调用php内置函数的问题

有关在smarty中调用php内置函数的问题

WBOY
WBOYOriginal
2016-07-25 09:05:42864Durchsuche
  1. function SmartyLen($params){
  2. extract($params);
  3. $len=strlen($text);
  4. $max=$length;
  5. for ($i=0;$i $chr=substr($text,$i,1);
  6. if(ord($chr)>0x80)//字符是中文
  7. {
  8. $length++;
  9. $i++;
  10. $len--;
  11. }
  12. }
  13. $str=substr($text,0,$length);
  14. if($len>$max)$str.="...";
  15. Return $str;
  16. }
复制代码

注册函数 $smarty->register_function('len',"SmartyLen"); 模板调用 {len text="测试下" length="1"} //注意这里的text和length其实是函数里的2个参数函数的参数必须要以函数内部变量名一致,其实传回去的的是个数组,在函数里用extract($params);把数组中的变量导入到当前的符号表。



Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn