So the consensus so far is to drop notices from ob_clean(), ob_end_clean() and 
ob_get_clean()? What about ob_flush() or others?

David



On 18.11.2011, at 14:08, Ilia Alshanetsky wrote:

> I agree with Stas' point there is really no need to force people do
> the while (ob_get_level())  ob_end_clean(); loop or "force" people to
> use the @ob_end_clean(); to avoid notices. If there are no buffers to
> clear it should be a noop, without any notices being raised.
> 
> On Fri, Nov 18, 2011 at 12:04 AM, Stas Malyshev <smalys...@sugarcrm.com> 
> wrote:
>> Hi!
>> 
>>> First of all, ob_clean() and ob_end_clean() will raise the same
>>> notice even in PHP 5.3. It seems inconsistent to me to treat these
>>> three differently, so in that regard, PHP 5.4 is actually fixing
>>> behavior (although arguably the other way to approach the problem is
>>> to remove the notice from all three of them).
>> 
>> I don't think ob_end_clean() should produce notices, otherwise it leads
>> to needless boilerplate code like:
>> 
>> if(ob_get_evel()>0) ob_end_clean();
>> 
>> while you could just write ob_end_clean() and be done with it.
>> ob_clean() is trickier since it's supposed to leave buffer in place, but
>> for functions that are supposed to remove the buffer warning doesn't add
>> any value, only makes people write uglier code.
>> --
>> Stanislav Malyshev, Software Architect
>> SugarCRM: http://www.sugarcrm.com/
>> (408)454-6900 ext. 227
>> 
>> --
>> PHP Internals - PHP Runtime Development Mailing List
>> To unsubscribe, visit: http://www.php.net/unsub.php
>> 
>> 
> 

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to