Gå til innhold

OR og AND problemer i if'er


Anbefalte innlegg

Jeg har begynnt å bli litt usikker på bruken av OR og AND nå i if'ene jeg bygger opp. Satt og titta i php.net manualen, og ble en smule forvirret til slutt.

 

tar jeg helt feil om &&, || = AND og | = OR?

 

håper noen kan forklare meg det litt mer med teskje enn det som står i på php.net

 

EDIT: ok da vet jeg at && = AND og || = OR, men hva er forskjellen på && og AND, og OR og ||? det er to forskjellige versjoner av AND og OR og svaret skulle finnes i operator precedence, men finner ikke frem til svaret.

Endret av LateFot
Lenke til kommentar
Videoannonse
Annonse
EDIT: ok da vet jeg at && = AND og || = OR, men hva er forskjellen på && og AND, og OR og ||? det er to forskjellige versjoner av AND og OR og svaret skulle finnes i operator precedence, men finner ikke frem til svaret.

Det er ingen forskjell på && og AND (samme med || og OR). Er nok bare et ledd i det å gjøre PHP mer forståelig for nybegynnere. Endel andre språk tillater kun || og && - f.eks Java.

Lenke til kommentar

Litt vanskelig å forklare, men skal prøve.

Forskjellen på OR og || er at OR brukes når noe skal skje hvis noe annet ikke skal skje. F.eks:

$result = mysql_query("querygreier") or die(mysql_error());

Den dør altså om $result != true (!= er det samme som ulik).

Det blir omtrent det samme som:

if($result) {

echo "Funket fint";

}

else {

echo mysql_error();

}

 

(Hvis jeg ikke har misforstådd dette HELT da!) :)

Lenke til kommentar

til opplyning så er

$result = mysql_query("querygreier") or die(mysql_error());

det samme som

$result = mysql_query("querygreier") || die(mysql_error());

med andre ord har det blitt gitt feilinfo. Se på dette:

<?php
$noe = 'noe';
$something = 'noe';

//disse er det samme
if($noe AND $annet OR $something)
{
echo '<p>yepp, første slo til</p> ';
}

if($noe AND ($annet OR $something))
{
echo '<p>yepp, andre slo til</p>';
}
//slette variablene
unset($noe, $something);
$something = 'noe';


// og disse er det samme
if($noe &&  $annet || $something)
{
echo '<p>yepp, tredje slo til</p> ';
}

if(($noe && $annet) || $something)
{
echo '<p>yepp, fjerde slo til</p>';
}



?>

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...