Automatically exported from code.google.com/p/planningalerts
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

34 lines
751 B

  1. <?php
  2. /**
  3. * Smarty plugin
  4. * @package Smarty
  5. * @subpackage plugins
  6. */
  7. /**
  8. * Smarty count_words modifier plugin
  9. *
  10. * Type: modifier<br>
  11. * Name: count_words<br>
  12. * Purpose: count the number of words in a text
  13. * @link http://smarty.php.net/manual/en/language.modifier.count.words.php
  14. * count_words (Smarty online manual)
  15. * @author Monte Ohrt <monte at ohrt dot com>
  16. * @param string
  17. * @return integer
  18. */
  19. function smarty_modifier_count_words($string)
  20. {
  21. // split text by ' ',\r,\n,\f,\t
  22. $split_array = preg_split('/\s+/',$string);
  23. // count matches that contain alphanumerics
  24. $word_count = preg_grep('/[a-zA-Z0-9\\x80-\\xff]/', $split_array);
  25. return count($word_count);
  26. }
  27. /* vim: set expandtab: */
  28. ?>