modifiercompiler.count_sentences.php 781 B

12345678910111213141516171819202122232425262728
  1. <?php
  2. /**
  3. * Smarty plugin
  4. *
  5. * @package Smarty
  6. * @subpackage PluginsModifierCompiler
  7. */
  8. /**
  9. * Smarty count_sentences modifier plugin
  10. *
  11. * Type: modifier<br>
  12. * Name: count_sentences
  13. * Purpose: count the number of sentences in a text
  14. *
  15. * @link http://www.smarty.net/manual/en/language.modifier.count.paragraphs.php
  16. * count_sentences (Smarty online manual)
  17. * @author Uwe Tews
  18. * @param array $params parameters
  19. * @return string with compiled code
  20. */
  21. function smarty_modifiercompiler_count_sentences($params, $compiler)
  22. {
  23. // find periods, question marks, exclamation marks with a word before but not after.
  24. return 'preg_match_all("#\w[\.\?\!](\W|$)#S' . Smarty::$_UTF8_MODIFIER . '", ' . $params[0] . ', $tmp)';
  25. }
  26. ?>