What is the difference between these two function calls in PHP?
init_get($somevariable);
@init_get($somevariable);
http://www.faqts.com/knowledge_base/view.phtml/aid/18068/fid/38
All PHP expressions can be called with the "@" prefix, which turns off error reporting for that particular expression.
It silences errors and warnings. See Error Control Operators.
the "@" will silence any php errors your function could raise.
As already answered the @
will stop the error (if any) from showing up.
In terms of performance this is not recommended.
What php is doing is:
If you don't want any errors showing up use error_reporting(0);
.
Or just write bug free code :P
As everyone said, it stops the output of errors for that particular function. However, this decreases performance greatly since it has to change the error display setting twice. I would recommend NOT ignoring warnings or errors and fixing the code instead.