I'm feeling excited about the ternary operator. Anything that reduces the amount of lines of code (and curly brackets) needed to do something will improve my working life & productivity immensely.
-- Kristina > On Sun, Aug 17, 2008 at 6:10 PM, Kristina Anderson > <[EMAIL PROTECTED]> wrote: > > Hi all. I have a question regarding the below syntax > > > > $result = isset($a['c']) ? $a['c'] : NULL; > > > > > > This is testing two conditions, first if $a['c'] is set, and then, if $a > > ['c'] is NULL...correct? > > No. > > The x ? a : b construct is called the "ternary operator". The following example: > > $x ? $a : $b > > could be read "If $x is true, the expression evaluates to $a. > Otherwise, the expression evaluates to $b.". > > It's basically a shorthand expression for if / else. > > Mike > > > What would $result be if $a['c'] is set but is not NULL? The same as > > if $a['c'] was not set? or...? > > > > I've seen similar syntax before, in some code Tedd & I were working > > with a couple of months back...and just want to make sure I fully > > understand what is actually happening with it. > > > > Thanks. > > > > -- Kristina > > > >> On Sun, Aug 17, 2008 at 4:49 PM, Michael B Allen <[EMAIL PROTECTED]> > > wrote: > >> > Is it ok to access non-existent array elements? > >> > > >> > Will accessing an array element using a key that does not exist > > always > >> > return NULL? > >> > >> it depends on how you have warnings configured. you might be getting > >> them in your log, for example... i believe the result of accessing a > >> non-existent array element is undefined. > >> > >> if i were you, i'd prob'ly ask if it exists first: > >> > >> <?php > >> > >> $result = isset($a['c']) ? $a['c'] : NULL; > >> > >> /** OR **/ > >> > >> $result = array_key_exists('c', $a) ? $a['c'] : NULL; > >> > >> ?> > >> > >> see: > >> > >> http://us2.php.net/function.isset > >> http://us2.php.net/function.array-key-exists > >> > >> > >> justin > >> -- > >> http://justinhileman.com > >> _______________________________________________ > >> New York PHP Community Talk Mailing List > >> http://lists.nyphp.org/mailman/listinfo/talk > >> > >> NYPHPCon 2006 Presentations Online > >> http://www.nyphpcon.com > >> > >> Show Your Participation in New York PHP > >> http://www.nyphp.org/show_participation.php > >> > >> > > > > > > _______________________________________________ > > New York PHP Community Talk Mailing List > > http://lists.nyphp.org/mailman/listinfo/talk > > > > NYPHPCon 2006 Presentations Online > > http://www.nyphpcon.com > > > > Show Your Participation in New York PHP > > http://www.nyphp.org/show_participation.php > > > > > > -- > Michael B Allen > PHP Active Directory SPNEGO SSO > http://www.ioplex.com/ > _______________________________________________ > New York PHP Community Talk Mailing List > http://lists.nyphp.org/mailman/listinfo/talk > > NYPHPCon 2006 Presentations Online > http://www.nyphpcon.com > > Show Your Participation in New York PHP > http://www.nyphp.org/show_participation.php > > _______________________________________________ New York PHP Community Talk Mailing List http://lists.nyphp.org/mailman/listinfo/talk NYPHPCon 2006 Presentations Online http://www.nyphpcon.com Show Your Participation in New York PHP http://www.nyphp.org/show_participation.php