Teil von SELFHTML Forum Teil von SELFHTML Forumsarchiv Teil von 2007 Teil von März

SELFHTML Forumsarchiv
Was denn, == oder ===

Informationsseite
  1. Seite (PHP) Was denn, == oder === von Gnom, 31. 03. 2007, 20:14
nach unten

Was denn, == oder ===

Die folgende Nachricht zum Thema stammt von: Gnom, 31. 03. 2007, 20:14

Hallo,

wieso kann man so prüfen:
$erg=($a=="foo")? true:false;

und so:

$erg=($a==="foo")? true:false;

wo liegt der unterschied? was bedeutet das '==='...
irgendwie komme ich nun drucheinander.. ich dachte immer == dient zum vergleich..

danke für hilfe && einen schönen abend noch!

nach obennach unten

Was denn, == oder ===

Die folgende Nachricht zum Thema stammt von: wucher wichtel, 31. 03. 2007, 20:18

Hallo!

Hier wird alles erklärt: http://tut.php-q.net/vergleich.html#u2

ciao, ww
--
Ein japanisch-deutsches Gedicht

sh:(  fo:|  ch:~  rl:(  br:>  n4:~  ie:%  mo:)  va:)  de:]  zu:)  fl:(  ss:|  ls:~  js:)

nach obennach unten

Was denn, == oder ===

Die folgende Nachricht zum Thema stammt von: %tul, 01. 04. 2007, 00:40

Hi

»» wo liegt der unterschied? was bedeutet das '==='...
»» irgendwie komme ich nun drucheinander.. ich dachte immer == dient zum vergleich..

Stimmt auch. === dient auch zum Vergleich.
Der Unterschied besteht darin, dass "===" zusätzlich prüft, ob die Typen der beiden Ausdrücke gleich sind.

{code lang=php]
$i =(int)1;
if($i=="1")
[/code}
ergibt false.

{code lang=php]
$i =(int)1;
if($i==1)
[/code}
ergibt true.
(ich habe den Code nicht getestet, aber er muss so eigentlich stimmen)

Tschausen
%tul

nach obennach unten

Was denn, == oder ===

Die folgende Nachricht zum Thema stammt von: Tom, 01. 04. 2007, 11:42

Hello,

»» »» wo liegt der unterschied? was bedeutet das '==='...

Kleine Richtigstellung und ein paar Erläuterungen:

<?php    ### operator_equal.php ###

$i = (int)1;              ## Bei der Zuweisung einer ganezen Zahl
                          ## würde $i automatisch den Typ integer annehmen

if($i == "1")             ## liefert TRUE
{
  echo "TRUE";
}
else
{
  echo "FALSE";
}

echo "<hr>";

$i = (int)1;

if($i == 1)               ## liefert TRUE
{
  echo "TRUE";
}
else
{
  echo "FALSE";
}


echo "<hr>";

if($i === "1")            ## liefert FALSE
{
  echo "TRUE";
}
else
{
  echo "FALSE";
}

echo "<hr>";

$i = (int)1;

if($i === 1)              ## liefert TRUE
{
  echo "TRUE";
}
else
{
  echo "FALSE";
}

echo "<hr>";
## auch ganz interessant

$i = '';

if($i == TRUE)
{
  echo "TRUE";
}
else
{
  echo "FALSE";
}

echo "<hr>";


if($i === TRUE)
{
  echo "TRUE";
}
else
{
  echo "FALSE";
}


echo "<hr>";


if($i === FALSE)
{
  echo "TRUE";
}
else
{
  echo "FALSE";
}

?>

==    prüft auf Gleichheit, besser ausgedrückt,
      ob sich die beiden Seiten gleichen


===   prüft auf Identität, also ob der Inhalt der línken Seite
      und der rechten sowohl vom Wert, als auch vom Typ übereinstimmen


Probier einfach mal ein paar Sachen aus. Das ist besser, als nur Büchern zu glauben ;-)



Harzliche Grüße vom Berg
http://www.annerschbarrich.de

Tom
--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau

nach oben
Teil von SELFHTML Forum Teil von SELFHTML Forumsarchiv Teil von 2007 Teil von März

© 1998-2006 Seite Impressum, Software: Classic Forum