Re: Re: UNLESS Statement Equivalent

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



2013/3/12 Ford, Mike <M.Ford@xxxxxxxxxxxxxx>

> > -----Original Message-----
> > From: Maciek Sokolewicz [mailto:tularis@xxxxxxxxx] On Behalf Of
> > Maciek Sokolewicz
> > Sent: 11 March 2013 22:44
> >
>
> > unless ( $a and $b )
> > =
> > if ( ! ($a and $b) )
> >
> > So in simple terms, just stick a ! (or the keyword not) in front of
> > your
> > expression, and you'll have exactly what you want:
> > if( not ( ($current_page == $saved_page) and ($current_ip ==
> > $saved_ip)
> > and ($current_dt < ($saved_dt + 3600) ) ) {
>
> Whilst this is true as far as it goes, I would suggest applying deMorgan's
> laws
> to simplify slightly to
>
>    if ( ($current_page != $saved_page) or ($current_ip != $saved_ip) or
> ($current_dt >= ($saved_dt + 3600) ) )
>

If it is simpler depends, because

   not ($everything && $must && $be && $true)

is sometimes more logical :)


>
> Also, the keyword versions of the Boolean operators are very low
> priority, which is why you need all those extra parentheses -- if
> you switch to the symbolic versions, you can leave all the internal
> parentheses out to give:
>
>    if ($current_page != $saved_page || $current_ip != $saved_ip ||
> $current_dt >= $saved_dt + 3600)
>
>
Just to throw that in

if (array($current_page, $current_ip, $current_dt) != array($saved_page,
$saved_ip, $saved_dt + 3600))

This at least includes the information, that you have to sets of values,
that should be equal :)



>
> Cheers!
>
> Mike
>
> --
> Mike Ford,
> Electronic Information Developer, Libraries and Learning Innovation,
> Portland PD507, City Campus, Leeds Metropolitan University,
> Portland Way, LEEDS,  LS1 3HE,  United Kingdom
> E: m.ford@xxxxxxxxxxxxxx     T: +44 113 812 4730
>
>
>
>
>
> To view the terms under which this email is distributed, please go to
> http://disclaimer.leedsmet.ac.uk/email.htm
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>


-- 
github.com/KingCrunch

[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux