Fix: Check if the function is declared before declaring it. (#23 by @Niko9911)
Improve test suite to also test against PHP 7.2 and add test for base64 encoding and decoding filters. (#22 by @arubacao and #25 by @Nyholm and @clue)
Feature / Fix: The fun()
function does not pass filter parameter null
to underlying stream_filter_append()
by default
(#15 by @Nyholm)
Certain filters (such as convert.quoted-printable-encode
) do not accept
a filter parameter at all. If no explicit filter parameter is given, we no
longer pass a default null
value.
$encode = Filter\fun('convert.quoted-printable-encode');
assert('t=C3=A4st' === $encode('täst'));
Add examples and improve documentation (#13 and #20 by @clue and #18 by @Nyholm)
Improve test suite by adding PHPUnit to require-dev, fix HHVM build for now again and ignore future HHVM build errors, lock Travis distro so new future defaults will not break the build and test on PHP 7.1 (#12, #14 and #19 by @clue and #16 by @Nyholm)
Feature: Support accessing built-in filters as callbacks (#5 by @clue)
$fun = Filter\fun('zlib.deflate');
$ret = $fun('hello') . $fun('world') . $fun();
assert('helloworld' === gzinflate($ret));
Feature: Abort filter operation when catching an Exception (#10 by @clue)
Feature: Additional safeguards to prevent filter state corruption (#7 by @clue)