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)) {
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?
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 )
{
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
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php