‘isset’ construct and multiple parameters


Posted in: php | Save to del.icio.us |

PHP programmers are frequently into using the various is_x group of functions: is_int, is_null etc. All of this functions take a single parameter which leads you to believe that other similar constructs take only a single parameter. Like the isset and unset constructs, which by the way take multiple parameters as shown below, which might help you save some keystrokes.

So instead of writing:

$var1 = 'a';
$var2 = 'b';
$var3 = 'c';
$var4 = 'd';
 
if(isset($var1) && isset($var2) && isset($var3) && isset($var4))
{
    // All variables are set, do something
}

We can write:

$var1 = 'a';
$var2 = 'b';
$var3 = 'c';
$var4 = 'd';
 
if(isset($var1, $var2, $var3, $var4))
{
    // Will return TRUE only if all of the parameters are set
}

Same with the unset() construct:

unset($var1, $var2, $var3, $var4);

4 Responses

1

Nesakysiu

February 1st, 2010 at 8:32 am

Nice :-)

2

kiran aghor

February 4th, 2010 at 8:55 pm

wow great. thanks for sharing this.

3

Chris Roane

February 26th, 2010 at 2:36 pm

Good to know. I know that I’ve done the long hand version many times before and this will save a lot of time.

4

Lucas

October 26th, 2010 at 12:49 pm

Oh, very nice, i relly never see this function, thank you for that post! keep the good job.

So, 1 question, isset($var, $var1) is faster than isset($var) && isset($var1).

Thank you again.

Comments are disabled for this post, but if you have spotted an error, feel free to contact me.