Re: Re: SHOULD I NOT USE "ELSE" IN IF STATEMENTS....?
| From: | Robert Cummings | Date: | Tue, 09 Jun 2009 16:22:22 +0000 |
| Subject: | Re: Re: SHOULD I NOT USE "ELSE" IN IF STATEMENTS....? | ||
| References: | 1 2 3 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-293811@lists.php.net to get a copy of this message | ||
Craige Leeder wrote:
I'm not sure I agree with NEVER using else. Sometimes else is a very logical way to organize code. However, it should not be used for data validation IE: function myValidatorFunc($data) { if (empty(data)) {I believe the article was suggesting not ending a function that returns a value with no return. So rather than return in the else, return outside the else as the last expression of the function. This way it is clear that the function returns a value. Contrast: <?php function foo( $foo ) {return false;} else {if (!is_numeric($data)) { return false; } else {}} } It's all about how deep you nest your code, and keeping the flow clean. That code would be much more readable as such: function myValidatorFunc($data) { if (empty(data)) {throw new BadMethodCallException("Paramater data missing");} if (!is_numeric($data)) {throw new InvalidArgumentException("Paramater data should be an integer.");} } See the difference?
if( $foo )
{
return true;
}
else
{
return false;
}
}
?>
Versus:
<?php
function foo( $foo )
{
if( $foo )
{
return true;
}
return false;} ?> Personally, I also prefer the latter style. Cheers, Rob. -- http://www.interjinn.com Application and Templating Framework for PHP