Como os filtros de string, os filtros convert fazem ações similar 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
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);
/* 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 and
convert.quoted-printable-decode
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 boolean binários
e
force-encode-first
.
convert.base64-decode só suporta o
parâmetro line-break-chars
como uma indução de tipo
para cortar o contedo 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");
/* Outputs: =This is a test.=0A */
?>