News Feed
Jobs Feed
Sections



Recent Jobs

News Archive
feed this:

ThinkPHP Blog:
Silence of the LAMPs
September 16, 2009 @ 09:13:40

In a recent post to the ThinkPHP blog Martin Brotzeller looks at a PHP operator that developers should just not use anymore - the suppression operator (@).

The silence operator exists to give programmers an easy way to suppress messages when a command might fail and the code checks for success itself (i.e. in those cases that raise errors instead of throwing exceptions).

He points out a popular use (like putting it on an fopen to prevent it from throwing an E_WARNING) but notes that this could cause trouble if the code is several layers deep and seems to fail silently. He gives en example of the Zend_Loader component of the Zend Framework and how, if the suppression operator was used, errors with an include failed without so much as a blip in the error log. While it seems handy, the suppression operator can cause more harm than good in the long run.

0 comments voice your opinion now!
suppression operator avoid



Johannes Schluter's Blog:
Scream!
February 27, 2009 @ 11:14:50

After being tasked with some code that was filled with the suppression character (@) all over, Johannes Schluter decided to take matters into his own hands and write an extension to disable it.

That's annoying. So I wrote a simple extension disabling this operator. That helped. I then proposed that extension to pecl, while doing that I found out that Gopal has written a similar extension before. After short discussions we added that extension, using the name scream to pecl and released the extension there.

Documentation for the extension has already been added to the PHP manual for the "Break the Silence" operator. By enabling the setting (either in your php.ini or via an ini_set) turning on "scream_enabled", any use of the suppression operator (@) will be nulled out and all according error messages will be displayed.

0 comments voice your opinion now!
screan suppression operator pecl extension remove phpini



Community Events





Don't see your event here?
Let us know!


release interview conference zendframework2 opinion api voicesoftheelephpant zendframework podcast phpunit unittest symfony2 introduction database community framework application injection testing language

All content copyright, 2012 PHPDeveloper.org :: info@phpdeveloper.org - Powered by the Solar PHP Framework