array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'tr', ), 'this' => array ( 0 => 'filters.convert.php', 1 => 'Dönüşüm Süzgeçleri', ), 'up' => array ( 0 => 'filters.php', 1 => 'Kullanılabilir Süzgeçlerin Listesi', ), 'prev' => array ( 0 => 'filters.string.php', 1 => 'Dizge Süzgeçleri', ), 'next' => array ( 0 => 'filters.compression.php', 1 => 'Sıkıştırma Süzgeçleri', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'tr', 'path' => 'appendices/filters.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
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);
/* Çıktısı: QnUgYmlyIGRlbmVtZWRpci4K */
$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);
/* Çıktısı: QnUgYmly
: IGRlbmVt
: ZWRpci4K */
$fp = fopen('php://output', 'w');
stream_filter_append($fp, 'convert.base64-decode');
fwrite($fp, "QnUgYmlyIGRlbmVtZWRpci4K");
echo "\n";
fclose($fp);
/* Çıktısı: Bu bir denemedir. */
?>
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");
/* Çıktısı: Bu k=C3=BC=C3=A7=C3=BCk bir denemedir.=0A */
$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");
/* Çıktısı: Bu küçük bir denemedir.
*/
?>
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);
/* Çıktısı: This is a test. */
?>