string.*
süzgeçleri gibi, the convert.*
süzgeçleri de isimlerinde yazan eylemleri gerçekleştirirler. Belli bir süzgeçle ilgili ayrıntılı bilgi edinmek için ilgili işlevin kılavuz sayfasına bakınız.
Bu süzgeçlerin kullanımı, tüm akım verisinin sırasıyla base64_encode() veya base64_decode() işlevi ile işlenmesine eşdeğerdir. convert.base64-encode
süzgeci bağımsız değişkenlerin bir ilişkisel dizi olarak belirtilmesini destekler. Eğer line-length
bağımsız değişkeni verilmişse base64 çıktı, her biri line-length
baytlık parçalara bölünür. Eğer line-break-chars
bağımsız değişkeni verilmişse çıktının her parçası belirtilen karakterle sınırlanır. Bu bağımsız değişkenler base64_encode() işlevinin chunk_split() ile birlikte kullanımına eşdeğer bir etkiye sebep olur.
Örnek 1 - convert.base64-encode
ve convert.base64-decode
örneği
<?php
$fp = fopen('php://output', 'w');
stream_filter_append($fp, 'convert.base64-encode');
fwrite($fp, "Bu bir denemedir.\n");
echo "\n";
fclose($fp);
$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, "Bu bir denemedir.\n");
echo "\n";
fclose($fp);
$fp = fopen('php://output', 'w');
stream_filter_append($fp, 'convert.base64-decode');
fwrite($fp, "QnUgYmlyIGRlbmVtZWRpci4K");
echo "\n";
fclose($fp);
?>
Bu süzgeçlerden kod çözme (decode) ile ilgili olanın kullanımı, tüm akım verisinin quoted_printable_decode() işlevi ile işlenmesine eşdeğerdir. convert.quoted-printable-encode
işlevine eşdeğer bir süzgeç yoktur. convert.quoted-printable-encode
süzgeci bağımsız değişkenlerinin bir ilişkisel dizi olarak verilmesini destekler. convert.base64-encode
süzgecinin bağımsız değişkenlerine ek olarak, binary
ve force-encode-first
bağımsız değişkenlerini de destekler. convert.quoted-printable-encode
süzgeci, kodlanmış veriden yararlı yükü ayırmak için bir ipucu olarak sadece line-break-chars
bağımsız değişkenini destekler.
Örnek 2 - convert.quoted-printable-encode
ve convert.quoted-printable-decode
örneği
<?php
$fp = fopen('php://output', 'w');
stream_filter_append($fp, 'convert.quoted-printable-encode');
fwrite($fp, "Bu küçük bir denemedir.\n");
$fp = fopen('php://output', 'w');
stream_filter_append($fp, 'convert.quoted-printable-decode');
fwrite($fp, "Bu k=C3=BC=C3=A7=C3=BCk bir denemedir.=0A");
?>
convert.iconv.*
süzgeçleri iconv desteği etkinse kullanılabilir olup tüm akım verisinin iconv() ile işlenmesine eşdeğerdir. Bu süzgeçler bağımsız değişkenleri desteklememekle beraber girdi ve çıktı kodlamaları süzgeç isminin parçası olarak verilebilir. Örneğin, convert.iconv.<input-encoding>.<output-encoding>
veya convert.iconv.<input-encoding>/<output-encoding>
(her iki gösterim anlamsal olarak eşdeğerdir).
Örnek 3 - convert.iconv.*
örneği
<?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);
?>