drie dubbele =

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Nils Kuijpers

Nils Kuijpers

14/11/2008 10:02:00
Quote Anchor link
Wat is het verschil tussen == en ===?
 
PHP hulp

PHP hulp

13/03/2025 20:51:52
 
Marco

Marco

14/11/2008 10:12:00
Quote Anchor link
'==' controleerd of 2 variabelen hetzelfde zijn:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
$var1 = 1;
$var2 = 1;

if($var1 == $var2) {
  return true;
}
// returned true

Maar omdat PHP de gebruiker het datatype niet laat bepalen, is dat vrij globaal, dit werkt bijvoorbeeld ook:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
$var1 = 1;
$var2 = true;

if($var1 == $var2) {
  return true;
}
// returned ook true!

Dus hier heb je een int (rond getal) die vergeleken wordt met een boolean (true / false) en wordt hetzelfde bevonden, dus php vind 1 hetzelfde als 'true';

Zo zal php dat getal als string: "1" OOK hetzelfde vinden als het getal '1' en de boolean 'true';

Dit kan soms vervelend zijn, dus als je wilt dat de inhoud van een variabele hetzelfde is EN de datatype, moet je 3x = gebruiken, dan is alles wat stricter, zoals in een programmeer taal als java of C++:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
$var1 = 1;
$var2 = true;
$var3 = 1;

if($var1 === $var2) {
  return true;
  // Nu werkt het niet, omdat er 3x '=' staat
}

if($var1 === $var3) {
  return true;
  Dit werkt weer wel, omdat $var1 en $var3 echt hetzelfde zijn, allebei 'int' en allebei hetzelfde getal
}
Gewijzigd op 01/01/1970 01:00:00 door Marco
 

14/11/2008 10:17:00
 
Jasper Sni

Jasper Sni

14/11/2008 11:55:00
Quote Anchor link
Nils schreef op 14.11.2008 10:02:
Wat is het verschil tussen == en ===?


==: Beide variabelen zijn gelijk aan elkaar
===: Beide variabelen zijn gelijk aan elkaar en zijn van hetzelfde type.
 
PHP Newbie

PHP Newbie

14/11/2008 14:00:00
Quote Anchor link
$i = 1
$j = "1"

$i == $j maar $i !=== $j
 

14/11/2008 14:56:00
Quote Anchor link
"drie dubbele ="

Klopt niet echt, dan zou je dus drie keer twee = hebben, ======... Daar heb ik nog nooit van gehoord, of hoort dat bij PHP 6? (zes streepjes.. php zes...)

Maar goed, deze pagina legt het heel duidelijk uit. Het is om data te vergelijken (comparison operator) dus kom je uit op deze: http://nl3.php.net/operators.comparison
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.