note 77732 added to function.stream-filter-register

From: Date: Tue, 11 Sep 2007 07:40:25 +0000
Subject: note 77732 added to function.stream-filter-register
Groups: php.notes 
Request: Send a blank email to php-notes+get-130352@lists.php.net to get a copy of this message
Could anyone tell why this code returns warning "is not a valid stream resource" after stream_filter_remove function: <?php class strtoupper_filter extends php_user_filter { function filter($in, $out, &$consumed, $closing) { while ($bucket = stream_bucket_make_writeable($in)) { $bucket->data = strtoupper($bucket->data); $consumed += $bucket->datalen; stream_bucket_append($out, $bucket); } return PSFS_PASS_ON; } } /* Register our filter with PHP */ stream_filter_register("strtoupper", "strtoupper_filter") or die("Failed to register filter"); $fp = fopen("foo-bar.txt", "w"); /* Attach the registered filter to the stream just opened */ $filter = stream_filter_append($fp, "strtoupper"); fwrite($fp, "Line1\n"); fwrite($fp, "Word - 2\n"); /* Remove filter from stream */ echo stream_filter_remove($filter); /* Writing some data without filter */ fwrite($fp, "Easy As 123\n"); fclose($fp); /* Read the contents back out */ readfile("foo-bar.txt"); ?> The only solution I've found so far is to open file once again after removing filter. ---- Server IP: 81.94.227.69 Probable Submitter: 62.85.79.74 ---- Manual Page -- http://www.php.net/manual/en/function.stream-filter-register.php Edit -- https://master.php.net/note/edit/77732 Del: integrated -- https://master.php.net/note/delete/77732/integrated Del: useless -- https://master.php.net/note/delete/77732/useless Del: bad code -- https://master.php.net/note/delete/77732/bad+code Del: spam -- https://master.php.net/note/delete/77732/spam Del: non-english -- https://master.php.net/note/delete/77732/non-english Del: in docs -- https://master.php.net/note/delete/77732/in+docs Del: other reasons-- https://master.php.net/note/delete/77732 Reject -- https://master.php.net/note/reject/77732 Search -- https://master.php.net/manage/user-notes.php

« previous php.notes (#130352) next »