ТОП-10 популярных



Для работы с вещественными числами в MySQL предусмотрено три типа данных - это типы FLOAT, DOUBLE, DECIMAL. Числовой тип FLOAT...

НОУТБУК с блестящим экраном
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...

БОЛЬШЕ БОЛЬШИХ LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...

Больше больших LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...

Магнито-оптический дисковод DynaMO
Cейчас, когда традиционные флоппи-дисководы на долгие годы замерли в своем развитии, поиск альтернативных носителей продолжается, и ситуация, казалось бы, разрешилась...

Иди и пиши. TravelMate C100
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...

ПОД ЛИТЕРОЙ «N»
Aтаку LCD-мониторов не остановить, а масштабы этого наступления даже немного пугают. Судите сами — многие пользователи только начинают приглядываться к новому для...


Для длинных строк, т.е. строк длиннее 255 символов, в MySQL предусмотрены типы BLOB (Binary Large Object, большой двоичный объект) и...

Размер объему не помеха.
С тех пор как компания Fujitsu отказалась от производства жестких дисков для настольных компьютеров, многие пользователи начали забывать о том,...


Какую только информацию мы не помещаем на компакт-диски: резервные копии важных данных, музыку, фильмы... Многие полагают, что главное - «купить...

PHP. Кодирование и декодирование. Часть Двеннадцатая.


18-01-2015

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.

Понравился материал? Поделитесь с друзьями!



<< Предыдущая статьяСледующая статья >>
PHP. Кодирование и декодирование. Часть Одиннадцатая. PHP. Кодирование и декодирование. Часть Триннадцатая.