Como todos os filtros de string, os filtros convert realizam ações similares aos seus nomes. Os filtros de conversão foram adicionados com PHP 5.0.0. Para mais informações em um dado filtro, veja a página do manual para a função correspondente.
convert.base64-encode e
convert.base64-decode
O uso desses filtros são equivalentes ao processamento de todos os dados de stream pelas
funções base64_encode() e base64_decode()
respectivamente.
convert.base64-encode suporta parâmetros no formato de
um array associativo. Se line-length
for passado, a
saída do base64 será quebrada em pedaços de line-length
caracteres cada. Se line-break-chars
for passado, cada
pedaço será delimitado pelos caracteres passados. Esses parâmetros dão o
mesmo efeito que usar base64_encode() com
chunk_split().
Exemplo #1 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);
/* Saída: 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);
/* Saída: VGhpcyBp
: cyBhIHRl
: c3QuCg== */
$fp = fopen('php://output', 'w');
stream_filter_append($fp, 'convert.base64-decode');
fwrite($fp, "VGhpcyBpcyBhIHRlc3QuCg==");
fclose($fp);
/* Saída: This is a test. */
?>
convert.quoted-printable-encode and
convert.quoted-printable-decode
O uso da versão de decodificação desse filtro é equivalente ao processamente de todos
os dados da stream pelas funções quoted_printable_decode().
Não há nenhuma função equivalente a convert.quoted-printable-encode.
convert.quoted-printable-encode suporta parâmetros passados como
um array associativo. Além dos parâmetros suportados por
convert.base64-encode, convert.quoted-printable-encode
também suporta argumentos boleanos binários
e
force-encode-first
.
convert.base64-decode só suporta o
parâmetro line-break-chars
como uma dica de tipo
para cortar o conteúdo codificado.
Exemplo #2 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");
/* Saída: =This is a test.=0A */
?>