Ca și filtrele string.*, filtrele convert.* efectuează acțiuni similare numelor lor. Pentru mai multe informații despre un anumit filtru, referiți-vă la pagina din manual pentru funcția corespunzătoare.
Utilizarea acestor filtre este echivalentă cu procesarea tuturor datelor din
flux prin funcțiile base64_encode() și
base64_decode() respectiv.
convert.base64-encode
susține parametri sub forma unui
tablou asociativ. Dacă parametrul line-length
este
specificat, ieșirile sub forma base64 for fi separate în porțiuni de câte
line-length
caractere fiecare. Dacă parametrul
line-break-chars
este specificat, fiecare porțiune va
fi delimitată cu caracterele specificaate în parametru. Acești parametri
produc același efect ca și utilizarea base64_encode() cu
chunk_split().
Example #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);
/* Afișează: 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);
/* Afișează: VGhpcyBp
: cyBhIHRl
: c3QuCg== */
$fp = fopen('php://output', 'w');
stream_filter_append($fp, 'convert.base64-decode');
fwrite($fp, "VGhpcyBpcyBhIHRlc3QuCg==");
fclose($fp);
/* Afișează: This is a test. */
?>
Utilizarea versiunii decode a acestui filtru este echivalentă cu procesarea
tuturor datelor din flux prin funcția quoted_printable_decode().
Nu există o funcție echivalentă pentru convert.quoted-printable-encode
.
convert.quoted-printable-encode
susține parametrii sub
forma unui tablou asociativ. Adăugător la parametrii susținuți de
convert.base64-encode
, convert.quoted-printable-encode
de asemenea susține argumente boolean binary
și
force-encode-first
. convert.base64-decode
susține numai parametrul line-break-chars
în calitate
de indiciu al caracterelor ce trebiue eliminate din încărcătura utilă
codificată.
Example #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");
/* Afișează: =This is a test.=0A */
?>
Filtrele convert.iconv.*
sunt disponibile dacă susținerea
iconv este activată. Utilizarea lor este
echivalentă cu procesarea tuturor datelor din flux cu funcția
iconv(). Aceste filtre nu susțin parametri, în schimb se
așteaptă ca codificările de intrare și de ieșire să fie furnizate în
denumirea filtrului, de exemplu
convert.iconv.<input-encoding>.<output-encoding>
sau
convert.iconv.<input-encoding>/<output-encoding>
(ambele notări sunt echivalente semantic).
Example #3 convert.iconv.*
<?php
$fp = fopen('php://output', 'w');
stream_filter_append($fp, 'convert.iconv.utf-16le.utf-8');
fwrite($fp, "T\0h\0i\0s\0 \0i\0s\0 \0a\0 \0t\0e\0s\0t\0.\0\n\0");
fclose($fp);
/* Afișează: This is a test. */
?>