Руководство по PHP
Пред. | Приложение M. Список доступных фильтров | След.

# Преобразовывающие фильтры

Как и фильтры string.*, фильтры convert.* совершают действия, соответствующие их именам. Преобразовывающие фильтры были добавлены в PHP 5.0.0. Для получения дополнительной информации о конкретном фильтре, обратитесь к странице руководства соответствующей функции.

convert.base64-encode и convert.base64-decode Использование этих фильтров эквивалентно обработке всех данных потока функциями base64_encode() и base64_decode() соответственно. convert.base64-encode поддерживает аргументы, переданные в виде ассоциативного массива. Если указан аргумент line-length, результат base64 будет разделён на куски длинной line-length символов каждый. Если указан аргумент line-break-chars, каждый кусок будет разделён указанными символами. Эти параметры дают такой же эффект, как и использование base64_encode() в паре с chunk_split().

Пример M-5. convert.base64-encode и convert.base64-decode
`<?php $fp = fopen('php://output', 'w'); stream_filter_append($fp, 'convert.base64-encode'); fwrite($fp, "This is a test.\n"); fclose($fp); /* Outputs: VGhpcyBpcyBhIHRlc3QuCg== */ $param = array('line-length' => 8, 'line-break-chars' => "\r\n"); $fp = fopen('php://output', 'w'); stream_filter_append($fp, 'convert.base64-encode', STREAM_FILTER_WRITE, $param); fwrite($fp, "This is a test.\n"); fclose($fp); /* Outputs: VGhpcyBp : cyBhIHRl : c3QuCg== */ $fp = fopen('php://output', 'w'); stream_filter_append($fp, 'convert.base64-decode'); fwrite($fp, "VGhpcyBpcyBhIHRlc3QuCg=="); fclose($fp); /* Outputs: This is a test. */ ?>`

convert.quoted-printable-encode и convert.quoted-printable-decode Использование decode-версии этого фильтра эквивалентно обработке всех данных потока функцией quoted_printable_decode(). У фильтра convert.quoted-printable-encode нету эквивалентной функции. convert.quoted-printable-encode поддерживает аргументы, переданные в виде ассоциативного массива. В дополнение к аргументам, поддерживаемыми convert.base64-encode, convert.quoted-printable-encode также поддерживает boolean-аргументы binary и force-encode-first. convert.base64-decode поддерживает лишь аргумент line-break-chars в качестве подсказки для чистки закодированных данных.

Пример M-6. convert.quoted-printable-encode & convert.quoted-printable-decode
`<?php $fp = fopen('php://output', 'w'); stream_filter_append($fp, 'convert.quoted-printable-encode'); fwrite($fp, "This is a test.\n"); /* Outputs: =This is a test.=0A */ ?>`

Пред. | Начало | След.
Список доступных фильтров | Уровень выше | Компрессионные фильтры