string mb_convert_variables(string target, array source,...)
Функция mb_convert_variables (листинг 12.88) преобразует значения переменных из одной кодировки в другую. Аргумент source может быть массивом возможных идентификаторов кодировок или списком идентификаторов, разделенных запятыми. Функция возвращает кодировку, которая будет использоваться для преобразования переменных. Начиная с третьего аргумента может задаваться одна и более переменных. Значения переменных меняются прямо на месте.
j Листинг 12.88. Функция mb_convert_variables_
<?php
$text1 = "Every year PHP wins larger popularity!"; $text2 = "Jedes Jahr PHP gewinnt GroBere Popularitat!"; $encoding = mb_convert_variables(
mb_internal_encoding(),
"ASCII,UTF-8",
$text1, $text2); print("Text was encoded as $encoding.<br>");
?>
string mb_decode_mimeheader(string text)
Функция mb_decode_mimeheader (листинг 12.89) используется для преобразования данных, переданных аргументом text заголовка MIME, в стандартную кодировку.
j Листинг 12.89. Функция mb_decode_mimeheader
<?php
print(mb_decode_mimeheader(
'=?UTF-7?Q?Gro+AN=38-er=20Affe?='));
?>
string mb_decode_numericentity(string text, array conversion, array encoding)
Функция mb_decode_numericentity (листинг 12.90) декодирует коды цифровых объектов HTML. Аргументом conversion задается карта преобразования. Функция осуществляет поиск блоков из четырех элементов этого массива, которые могут иметь следующие значения: начальный и завершающий коды, смещение и маска. Начальный и завершающий коды должны совпадать с началом и концом диапазона символов. Если объект попадает в заданный диапазон, функция перед его декодированием использует смещение. Например, смещение 1 меняет код 65 на 66 или "A" на "B". Функция преобразовывает объекты на основании операции "побитового И" кода объекта и маски. Например, маска "0xFF" в применении к объекту 321 в результате дает A, так как 321 & 0xFF равно 65.
| Листинг 12.90. Функция mb_decode_numericentity
<?php
print(mb_decode_numericentity(
' 5;B 7;  9;23', array(0x00, 0xFF, 0x00, 0xFF)));
?>
string mb_detect_encoding(string text, array encoding)
Функция mb_detect_encoding (листинг 12.91) возвращает определенную кодировку, применяемую в отношении данных, заданных аргументом text. Необязательный аргумент encoding может задавать набор методов кодировки, которые будут опробованы по очереди. Этот аргумент может быть как строкой с идентификаторами кодировок, разделенными запятыми, так и массивом.
j Листинг 12.91. Функция mb_detect_encoding
<?php
print(mb_detect_encoding('GroB',
array('ASCII,,,UTF-8,,,EUC-JP')));
?>
array mb_detect_order(array encoding)
Функция mb_detect_order возвращает массив с описанием методов кодировки, которые PHP использует при определении кодировки строки, например с помощью функции mb_detect_encoding. Это значение можно изменить, задав в аргументе encoding массив или список значений, разделенных запятыми.
string mb_encode_mimeheader(string text, string encoding, string method, string linefeed)
Функция mb_encode_mimeheader (листинг 12.92) предназначена для кодировки строки для использования ее в заголовке MIME. Необязательный аргумент encoding задает кодировку, использованную для данных, заданных аргументом text. По умолчанию он имеет значение ISO-2022-JP. Необязательный аргумент method должен иметь значение B для кодировки base64 или Q для кодировки quoted-printable. Необязательный аргумент linefeed по умолчанию имеет значение "возврат каретки" с последующим символом "перевода строки".
| Листинг 12.92. Функция mb_encode_mimeheader_
<?php
print(mb_encode_mimeheader('GroBer Affe', 'UTF-7', 'Q') . " <corephp@leonatkinson.com>");
?>
string mb_encode_numericentity(string text, array conversion, string encoding)
Функция mb_encode_numericentity (листинг 12.93) предназначена для преобразования набора символов в цифровые объекты HTML и противоположна функции mb_decode_numericentity. Описание назначения массива conversion можно найти в описании функции mb_decode_numericentity.
j Листинг 12.93. Функция mb_encode_numericentity_
<?php
print(mb_encode_numericentity("ABC 123", array(0x00, 0xFF, 0x00, 0xFF)));
?>
ТОП-10 популярных
Для работы с вещественными числами в MySQL предусмотрено три типа данных - это типы FLOAT, DOUBLE, DECIMAL. Числовой тип FLOAT...
БОЛЬШЕ БОЛЬШИХ LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Больше больших LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
НОУТБУК с блестящим экраном
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...
Иди и пиши. TravelMate C100
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...
Магнито-оптический дисковод DynaMO
Cейчас, когда традиционные флоппи-дисководы на долгие годы замерли в своем развитии, поиск альтернативных носителей продолжается, и ситуация, казалось бы, разрешилась...
Cейчас, когда традиционные флоппи-дисководы на долгие годы замерли в своем развитии, поиск альтернативных носителей продолжается, и ситуация, казалось бы, разрешилась...
Компьютер для гурманов.«Эксимер ДМ»
Российская компания «Эксимер ДМ», известная как производитель настольных компьютеров, рабочих станций, серверов и ноутбуков, выступила техническим спонсором проведения торжеств, посвященных...
Российская компания «Эксимер ДМ», известная как производитель настольных компьютеров, рабочих станций, серверов и ноутбуков, выступила техническим спонсором проведения торжеств, посвященных...
Для длинных строк, т.е. строк длиннее 255 символов, в MySQL предусмотрены типы BLOB (Binary Large Object, большой двоичный объект) и...
В дополнение к календарным типам, предназначенным для хранения даты и времени отдельно, MySQL также поддерживает гибридные типы данных DATETIME и...
Вообще, к изменению настроек сервера прибегают очень редко. В MySQL программа заранее настроена так, чтобы соответствовать самым распространенным и основным...
PHP. Кодирование и декодирование. Часть Двадцать Третья.
29-01-2015
<< Предыдущая статья | Следующая статья >> |
PHP. Кодирование и декодирование. Часть Двадцать Вторая. | PHP. Кодирование и декодирование. Часть Двадцать Четвёртая. |