||$value, |
    | |
    $param1_);|

    ;[mixed $param1, …];

    修饰器必须处理的结果。


    Example 18.3. 一个简单的修饰器


    Example 18.4. 更复杂的修饰器

    1. <?php
    2. /*
    3. * Smarty plugin
    4. * -------------------------------------------------------------
    5. * File: modifier.truncate.php
    6. * Type: modifier
    7. * Name: truncate
    8. * Purpose: 截取字符串长度,多余的部分会被$etc字符串代替。
    9. * -------------------------------------------------------------
    10. function smarty_modifier_truncate($string, $length = 80, $etc = '...',
    11. $break_words = false)
    12. {
    13. if ($length == 0)
    14. return '';
    15.  
    16. if (strlen($string) > $length) {
    17. $length -= strlen($etc);
    18. $fragment = substr($string, 0, $length+1);
    19. $fragment = substr($fragment, 0, -1);
    20. else
    21. $fragment = preg_replace('/\s+(\S+)?$/', '', $fragment);
    22. return $fragment.$etc;
    23. } else
    24. return $string;
    25. }
    26. ?>
    27.  

    参见: , .