Like the string.* filters, the convert.* filters perform actions similar to their names. The convert filters were added with PHP 5.0.0. For more information on a given filter, refer to the manual page for the corresponding function.
   convert.base64-encode and
   convert.base64-decode
   Use of these filters are equivalent to processing all stream data through
   the base64_encode() and base64_decode()
   functions respectively.
   convert.base64-encode supports parameters given as
   an associative array.  If line-length is given, the
   base64 output will be split into chunks of line-length
   characters each.  If line-break-chars is given, each
   chunk will be delimited by the characters given.  These parameters give the
   same effect as using base64_encode() with
   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);
/* 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
   Use of the decode version of this filter is equivalent to processing all stream 
   data through the quoted_printable_decode() functions.
   There is no function equivalent to convert.quoted-printable-encode.
   convert.quoted-printable-encode supports parameters given as
   an associative array.  In addition to the parameters supported by 
   convert.base64-encode, convert.quoted-printable-encode
   also supports boolean arguments binary and
   force-encode-first.
   convert.base64-decode only supports the
   line-break-chars parameter as a type-hint
   for stripping from the encoded payload.
  
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");
/* Outputs:  =This is a test.=0A  */
?>
The convert.iconv.* filters are available, if iconv support is enabled, and their use is equivalent to processing all stream data with iconv(). These filters do not support parameters, but instead expect the input and output encodings to be given as part of the filter name, i.e. either as convert.iconv.<input-encoding>.<output-encoding> or convert.iconv.<input-encoding>/<output-encoding> (both notations are semantically equivalent).
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);
/* Outputs: This is a test. */
?>