September 2009
Intermediate to advanced
912 pages
48h 11m
German
Sie würden gern einen Stream filtern, aber PHP hat nicht den passenden Filter dafür. Zum Beispiel möchten Sie überzählige Leerzeichen und anderen Whitespace aus einem String entfernen, bevor Sie ihn nach php://output ausgeben.
Implementieren Sie Ihren eigenen Filter:
class WhitespaceFilter extends php_user_filter { function filter($in, $out, &$consumed, $closing) { while ($bucket = stream_bucket_make_writeable($in)) { $consumed += $bucket->datalen; $bucket->data = preg_replace("/(\s)\s+/","$1",$bucket->data); $bucket->datalen = strlen($bucket->data); stream_bucket_append($out, $bucket); } return PSFS_PASS_ON; } } stream_filter_register("convert.whitespace","WhitespaceFilter"); echo file_put_contents("php://filter/write=convert.whitespace/resource=php://output", ...