Source for file utf_8.php
Documentation is available at utf_8.php
* utf-8 encoding functions
* takes a string of unicode entities and converts it to a utf-8 encoded string
* each unicode entitiy has the form &#nnn(nn); n={0..9} and can be displayed by utf-8 supporting
* browsers. Ascii will not be modified.
* Original code is taken from www.php.net manual comments
* Original author: ronen at greyzone dot com
* @copyright 2004-2020 The SquirrelMail Project Team
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
* @version $Id: utf_8.php 14845 2020-01-07 08:09:34Z pdontthink $
* Converts string to utf-8
* @param string $string text with numeric unicode entities
* @return string utf-8 encoded text
// don't run encoding function, if there is no encoded characters
if (! preg_match("'&#[0-9]+;'",$string) ) return $string;
* Return utf8 symbol when unicode character number is provided
* This function is used internally by charset_encode_utf_8
* function. It might be unavailable to other SquirrelMail functions.
* Don't use it or make sure, that functions/encode/utf_8.php is
* @param array $matches array with first element a decimal unicode value
* @return string utf8 character
} else if ($var <
2048) {
$binPart1 =
substr ($binVal, 0, 5);
$binPart2 =
substr ($binVal, 5);
} else if ($var <
65536) {
$binPart1 =
substr ($binVal, 0, 4);
$binPart2 =
substr ($binVal, 4, 6);
$binPart3 =
substr ($binVal, 10);
$ret =
$char1 .
$char2 .
$char3;
} else if ($var <
2097152) {
$binPart1 =
substr ($binVal, 0, 3);
$binPart2 =
substr ($binVal, 3, 6);
$binPart3 =
substr ($binVal, 9, 6);
$binPart4 =
substr ($binVal, 15);
$ret =
$char1 .
$char2 .
$char3 .
$char4;
} else if ($var <
67108864) {
$binPart1 =
substr ($binVal, 0, 2);
$binPart2 =
substr ($binVal, 2, 6);
$binPart3 =
substr ($binVal, 8, 6);
$binPart4 =
substr ($binVal, 14,6);
$binPart5 =
substr ($binVal, 20);
$ret =
$char1 .
$char2 .
$char3 .
$char4 .
$char5;
} else if ($var <
2147483648) {
$binPart1 =
substr ($binVal, 0, 1);
$binPart2 =
substr ($binVal, 1, 6);
$binPart3 =
substr ($binVal, 7, 6);
$binPart4 =
substr ($binVal, 13,6);
$binPart5 =
substr ($binVal, 19,6);
$binPart6 =
substr ($binVal, 25);
$ret =
$char1 .
$char2 .
$char3 .
$char4 .
$char5 .
$char6;
// there is no such symbol in utf-8
Documentation generated on Mon, 13 Jan 2020 04:23:44 +0100 by phpDocumentor 1.4.3