gluon-web-remote

Web remote Administration for big size of gluon routers
git clone git://archive.git.mtrnord.blog/MTRNord/gluon-web-remote.git
Log | Files | Refs | README

modifiercompiler.count_words.php (969B)


      1 <?php
      2 /**
      3  * Smarty plugin
      4  *
      5  * @package    Smarty
      6  * @subpackage PluginsModifierCompiler
      7  */
      8 
      9 /**
     10  * Smarty count_words modifier plugin
     11  * Type:     modifier<br>
     12  * Name:     count_words<br>
     13  * Purpose:  count the number of words in a text
     14  *
     15  * @link   http://www.smarty.net/manual/en/language.modifier.count.words.php count_words (Smarty online manual)
     16  * @author Uwe Tews
     17  *
     18  * @param array $params parameters
     19  *
     20  * @return string with compiled code
     21  */
     22 function smarty_modifiercompiler_count_words($params)
     23 {
     24     if (Smarty::$_MBSTRING) {
     25         // return 'preg_match_all(\'#[\w\pL]+#' . Smarty::$_UTF8_MODIFIER . '\', ' . $params[0] . ', $tmp)';
     26         // expression taken from http://de.php.net/manual/en/function.str-word-count.php#85592
     27         return 'preg_match_all(\'/\p{L}[\p{L}\p{Mn}\p{Pd}\\\'\x{2019}]*/' . Smarty::$_UTF8_MODIFIER . '\', ' . $params[0] . ', $tmp)';
     28     }
     29     // no MBString fallback
     30     return 'str_word_count(' . $params[0] . ')';
     31 }