value unserialize(string data)
Функция unserialize используется для преобразования трансформированных данных в значения PHP. Описание функции serialize содержит пример всего процесса. При обратной трансформации объектов PHP делает попытку вызвать метод __wakeup.
Директива unserialize_callback_func из конфигурационного файла php.ini задает функцию, вызываемую при обратной трансформации объектов неизвестных классов. Это позволяет определить сначала класс, возможно, за счет использования директивы include_once. Эта функция обратного действия должна принимать единственный аргумент - имя класса.
string urldecode(string url_text)
Функция urldecode возвращает строку url_text, преобразованную из формата URL в обычный текст. Ее нельзя использовать с двоичными данными.
string urlencode(string url_text)
Функция urldecode возвращает строку url_text, преобразованную из формата URL в обычный текст. Этот формат может использовать для определения ASCII-кодов символ %. Данную функцию нельзя использовать с двоичными данными.
string wordwrap (string text, integer width, string break, integer cut)
Функция wordwrap (листинг 12.59) выполняет перенос слов на 75 символе, вставляя символ переноса строк между словами. Необязательный аргумент width задает длину, отличную от стандартной длины строки. Необязательный аргумент break задает строку, используемую для разрыва строк.
В случае, если слова получаются большими, чем заданная длина, PHP позволяет строке превысить заданную длину. Этого можно избежать, установив необязательный аргумент cut равным 1, и PHP будет вставлять разрыв строки посередине слова.
| Листинг 12.59. Функция wordwrap_
<?php
$text = "Core PHP Programming";
//Core PHP
//Programming
print(wordwrap($text, 8) . "nn");
//Core PHP
//Programm
//ing
print(wordwrap($text, 8, "n", 1));
?>
12.4. Сжатие
Эти функции предназначены для сжатия и разворачивания строк с помощью библиотек bzip2 и gzip. Существуют функции, непосредственно предназначенные для чтения и записи в сжатые файлы (см. главу 9, "Операционная система").
string bzcompress(string data, integer blocksize, integer workfactor)
Функция bzcompress (листинг 12.60) сжимает данные, используя библиотеку bzip2. Необязательный аргумент blocksize задает уровень сжатия от 1 до 9, причем 9 - высшая степень сжатия. По умолчанию значение аргумента blocksize равно 4. Необязательный аргумент workfactor влияет на обработку функцией bzcompress длинных строк с повторяющимися последовательностями символов. Он должен иметь целое значение в диапазоне 0-250.
string bzdecompress(string data, boolean small)
Функция bzdecompress предназначена для разворачивания данных, сжатых с помощью алгоритма bzip2. Когда необязательный аргумент small имеет значение TRUE, PHP использует альтернативную процедуру разворачивания, при которой за счет снижения производительности ограничивается использование памяти.
Листинг 12.60. Функции bzcompress и bzdecompress
<?php
$text = "Core PHP Programming"; $bzText = bzcompress($text, 9); print(bin2hex($bzText) . "<br>"); print(bzdecompress($bzText) . "<br>");
?>
string gzcompress(string data, integer level)
Функция gzcompress (листинг 12.61) сжимает данные, используя алгоритм zlib. Необязательный аргумент level задает уровень сжатия от 0 до 9, причем 9 - высшая степень сжатия. Этот алгоритм несколько отличается от алгоритма сжатия gzip, используемого функцией gzencode. Для разворачивания данных, сжатых этой функцией, используется функция gzuncompress.
Листинг 12.61. Функции gzcompress и gzuncompress
<?php
$text = "Core PHP Programming"; $gzText = gzcompress($text, 9); print(bin2hex($gzText) . "<br>"); print(gzuncompress($gzText) . "<br>");
?>
string gzdeflate(string data, integer level)
Функция gzdeflate (листинг 12.62) сжимает данные, используя алгоритм deflate. Необязательный аргумент level задает уровень сжатия от 0 до 9, причем 9 - высшая степень сжатия. Для разворачивания данных, сжатых этой функцией, используется функция gzinflate.
ТОП-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. Кодирование и декодирование. Часть Двеннадцатая.
18-01-2015
<< Предыдущая статья | Следующая статья >> |
PHP. Кодирование и декодирование. Часть Одиннадцатая. | PHP. Кодирование и декодирование. Часть Триннадцатая. |