On 11-3-2013 22:32, Angela Barone wrote:
        I'm looking for an 'unless' statement, but as far as I can tell, PHP 
doesn't have one.  Hopefully someone can help me rewrite my statement.

        In English, I want to say: "always do something UNLESS these 3 conditions 
are met".

        The best I've been able to come up with in PHP is this:

if ( ($current_page == $saved_page) and ($current_ip == $saved_ip) and 
($current_dt < ($saved_dt + 3600)) ) {
        return;
} else {
        $query  = "UPDATE `table` SET `hits` = '$count', `agent` = '$agent', `ts` = 
'$date_time'  WHERE `page` = '$page'";
        $result = mysql_query($query) or die ('Error! -- ' . mysql_error());
}

        However, I've read where this is not really acceptable.  Can someone 
help me eliminate the 'else' portion of this if statement?

Thank you,
Angela

P.S.  I realize the above isn't complete code but it should still be clear.  If 
not, let me know.


Logically, unless means the same as if not. As long as you condense your entire expression to a single boolean result, the only thing you would need to do is negate it to create your unless-statement.

In code, this would mean:
unless ( $a )
=
if ( !$a )

or to show it in a more clear way:
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) ) ) {

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to