Solved

Stupid if statment

Posted on 2006-11-24
6
242 Views
Last Modified: 2006-11-26
Ok this is a really stupid question, but I cant remember it

I need to know the syntax for IF OR statments

I thought it was:-
<?php
if ((1 == 1) || (2 ==2))
{
echo "1 = 1 or 2 = 2";
}
?>

I also thought that the and would be:-
<?php
if ((1 == 1) && (2 ==2))
{
echo "1 = 1 and 2 = 2";
}
?>
0
Comment
Question by:tonelm54
6 Comments
 
LVL 28

Assisted Solution

by:gamebits
gamebits earned 100 total points
ID: 18007412
Hi tonelm54,
And what is the problem

Gamebits

Cheers!
0
 
LVL 13

Assisted Solution

by:rhickmott
rhickmott earned 200 total points
ID: 18007426
Yes those statements are correct.

0
 
LVL 48

Assisted Solution

by:hernst42
hernst42 earned 100 total points
ID: 18007457
instead of || you can write "or" or for && you can also use "and" If you use the parantheis, but the if statements are akso correct
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 13

Accepted Solution

by:
rhickmott earned 200 total points
ID: 18007536
Traditionally in programming the idea in the Double Operator is to tell the interpreter or compiler to use Lazy Evaluation.

If you have for example

==============================

function mock () {
     for ($i=1 ; $i < 80000000; $i++ ) {
           // Do Nothing
     }
     return true;
}

if ((1=1) || mock()) {
     echo("True");
}

===============================

Because this is an OR statement if the first is true then we don't need to evaluate the second so the pointless function mock() is never run. If however you had used

if ((1=1) | mock()) {
     echo("True");
}

It will evaluate BOTH conditions even though it doesent need to useful if mock () contained statements you wanted to run anyway even if it was false.

For this reason It is normally faster to use || and NEVER slower.

Ditto with && if the first is false then the second is pointless and not run.

While its true you can use OR and AND directly but you would have to test it to find out which system it used and for this reason most people tend to stick with && and ||

0
 
LVL 5

Assisted Solution

by:jalalmegadeth
jalalmegadeth earned 100 total points
ID: 18008770
<?php
if ((1 == 1) && (2 ==2))
{
echo "1 = 1 and 2 = 2";
}
?>

this one is correct and it's for AND



<?php
if ((1 == 1) || (2 ==2))
{
echo "1 = 1 or 2 = 2";
}
?>
this one is for OR


so both of them are correct
0
 

Author Comment

by:tonelm54
ID: 18014795
Sorry, the problems were due to PHP not been installed correctly, and me trying to figure if statments out that I havnt done for ages.

Sorry, again, but thanks, I think its fair to distrubute the points equally between everyone who contributed.

Thanks again, to everyone
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

I imagine that there are some, like me, who require a way of getting currency exchange rates for implementation in web project from time to time, so I thought I would share a solution that I have developed for this purpose. It turns out that Yaho…
Introduction This article is intended for those who are new to PHP error handling (https://www.experts-exchange.com/articles/11769/And-by-the-way-I-am-New-to-PHP.html).  It addresses one of the most common problems that plague beginning PHP develop…
Explain concepts important to validation of email addresses with regular expressions. Applies to most languages/tools that uses regular expressions. Consider email address RFCs: Look at HTML5 form input element (with type=email) regex pattern: T…
The viewer will learn how to count occurrences of each item in an array.

713 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question