有關在smarty中呼叫php內建函數的問題

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

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



來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!