igorsantos07
igorsantos07

Reputation: 4686

Is there any way to show, or throw, a PHP warning?

I have a select() method in a database class, that has an optional boolean argument $sum. This argument is used to say if the method should use COUNT(*) or not too.

I would like to show a warning, like those normal PHP errors, if I try to access $class->sum if the attribute is not set (i.e. when I call select() with $sum == false.

Is there any way to show a warning like this, or I should just echo an error and be happy?

Upvotes: 73

Views: 44957

Answers (3)

T30
T30

Reputation: 12222

If you want to generate a warning, you should write

trigger_error($yourErrorMessage, E_USER_WARNING);

trigger_error() has the $error_type parameter for setting the error level (Notice, Warning or Fatal error). The constants are, respectively:

E_USER_NOTICE             // Notice (default)
E_USER_WARNING            // Warning
E_USER_ERROR              // Fatal Error

Note that Fatal error stops the execution of subsequent PHP code, while Notice and Warning let it continue.

From PHP 5.5, you should also consider the Finally statement.

Upvotes: 112

alex
alex

Reputation: 490143

You could try trigger_error().

Upvotes: 16

moo
moo

Reputation: 7779

You're going the object-oriented approach, so I suggest a look into exceptions.

Upvotes: 8

Related Questions