Files
fusionpbx/resources/templates/engine/smarty/plugins/modifiercompiler.count_characters.php
T

33 lines
918 B
PHP
Raw Normal View History

2013-11-09 20:02:56 +00:00
<?php
/**
* Smarty plugin
*
2018-11-07 07:18:14 +00:00
* @package Smarty
2013-11-09 20:02:56 +00:00
* @subpackage PluginsModifierCompiler
*/
/**
* Smarty count_characters modifier plugin
2018-11-07 07:18:14 +00:00
* Type: modifier
* Name: count_characters
2013-11-09 20:02:56 +00:00
* Purpose: count the number of characters in a text
*
2018-11-07 07:18:14 +00:00
* @link http://www.smarty.net/manual/en/language.modifier.count.characters.php count_characters (Smarty online
* manual)
2013-11-09 20:02:56 +00:00
* @author Uwe Tews
2018-11-07 07:18:14 +00:00
*
2013-11-09 20:02:56 +00:00
* @param array $params parameters
2018-11-07 07:18:14 +00:00
*
2013-11-09 20:02:56 +00:00
* @return string with compiled code
*/
2018-11-07 07:18:14 +00:00
function smarty_modifiercompiler_count_characters($params)
2013-11-09 20:02:56 +00:00
{
2018-11-07 07:18:14 +00:00
if (!isset($params[ 1 ]) || $params[ 1 ] !== 'true') {
return 'preg_match_all(\'/[^\s]/' . Smarty::$_UTF8_MODIFIER . '\',' . $params[ 0 ] . ', $tmp)';
2013-11-09 20:02:56 +00:00
}
if (Smarty::$_MBSTRING) {
2018-11-07 07:18:14 +00:00
return 'mb_strlen(' . $params[ 0 ] . ', \'' . addslashes(Smarty::$_CHARSET) . '\')';
2013-11-09 20:02:56 +00:00
}
// no MBString fallback
2018-11-07 07:18:14 +00:00
return 'strlen(' . $params[ 0 ] . ')';
2013-11-09 20:02:56 +00:00
}