tags:

views:

83

answers:

2

I was going through the list of predefined Exceptions in PHP and I noticed the DomainException. Anyone know what does DomainException mean? Does it mean failed data model validation?

A: 

This kind of exception should be used to inform about domain errors in mathematical sense.

See domain of a function.

For example, the square root function will only be defined for positive numbers (unless you're using complex numbers...)

Greg
+2  A: 

There's a pretty hilarious discussion here about how no one seems to know what is means:

http://bugs.php.net/bug.php?id=47097

From the end of that link:

Domain means data domain here. That is a DomainException shall be through whenever a value does not adhere to a defined valid data domain. Examples: - 0 is not a in the domain for division. - Foo is not in the domain for weekdays.

The first is different from out of range and alike, but you could use InvalidParameter in case it is actually a parameter to the function that performs the division. If it is a value calculated inside the function prior to executing the division and then a pre-conditon check throws instead of executing the division, then it becomes a DomainException.

karim79
haha this is pretty funny +1
oykuo