From fa10e0945ecd45bfe78a2c8fb015a43092b4944b Mon Sep 17 00:00:00 2001 From: plegall Date: Thu, 10 Dec 2015 14:02:22 +0100 Subject: bug #385 update to smarty-3.1.28-dev (from Github) --- include/smarty/libs/plugins/shared.mb_unicode.php | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) (limited to 'include/smarty/libs/plugins/shared.mb_unicode.php') diff --git a/include/smarty/libs/plugins/shared.mb_unicode.php b/include/smarty/libs/plugins/shared.mb_unicode.php index e7f839ec8..0f790b56a 100644 --- a/include/smarty/libs/plugins/shared.mb_unicode.php +++ b/include/smarty/libs/plugins/shared.mb_unicode.php @@ -2,47 +2,53 @@ /** * Smarty shared plugin * - * @package Smarty + * @package Smarty * @subpackage PluginsShared */ /** * convert characters to their decimal unicode equivalents * - * @link http://www.ibm.com/developerworks/library/os-php-unicode/index.html#listing3 for inspiration + * @link http://www.ibm.com/developerworks/library/os-php-unicode/index.html#listing3 for inspiration + * * @param string $string characters to calculate unicode of * @param string $encoding encoding of $string, if null mb_internal_encoding() is used + * * @return array sequence of unicodes * @author Rodney Rehm */ -function smarty_mb_to_unicode($string, $encoding=null) { +function smarty_mb_to_unicode($string, $encoding = null) +{ if ($encoding) { $expanded = mb_convert_encoding($string, "UTF-32BE", $encoding); } else { $expanded = mb_convert_encoding($string, "UTF-32BE"); } + return unpack("N*", $expanded); } /** * convert unicodes to the character of given encoding * - * @link http://www.ibm.com/developerworks/library/os-php-unicode/index.html#listing3 for inspiration + * @link http://www.ibm.com/developerworks/library/os-php-unicode/index.html#listing3 for inspiration + * * @param integer|array $unicode single unicode or list of unicodes to convert * @param string $encoding encoding of returned string, if null mb_internal_encoding() is used + * * @return string unicode as character sequence in given $encoding * @author Rodney Rehm */ -function smarty_mb_from_unicode($unicode, $encoding=null) { +function smarty_mb_from_unicode($unicode, $encoding = null) +{ $t = ''; if (!$encoding) { $encoding = mb_internal_encoding(); } - foreach((array) $unicode as $utf32be) { + foreach ((array) $unicode as $utf32be) { $character = pack("N*", $utf32be); $t .= mb_convert_encoding($character, $encoding, "UTF-32BE"); } + return $t; } - -?> \ No newline at end of file -- cgit v1.2.3