If statement error?
Ik ben bezig met php leren nu heb ik een if statement gemaakt, helaas krijg ik een error en weet niet het probleem, iemand die de error ziet, lijkt wel te kloppen maar iets doet het niet goed, en wil weten wat ik verkeerd doe..
Parse error: syntax error, unexpected 'echo' (T_ECHO) in C:\xampp\htdocs\tutorials\test.php on line 8
Code (php)
Gewijzigd op 02/12/2014 11:26:29 door Jelle Jansen
Code (php)
Let op de haakjes bij de if om de echo heen
Even voor duidelijkheid:
Jij gebruikt () en je moet {} gebruiken (Met zo'n gek hoekje ding aan zijkant)
Gewijzigd op 02/12/2014 11:28:31 door Kevin J
thx :)
En waarom 6 tussen quotes bij de if? Het gaat om een getal.
Jan de Laet op 02/12/2014 12:10:28:
En waarom 6 tussen quotes bij de if? Het gaat om een getal.
Klopt het hoeft niet, maar hij is nog aan het leren dus hij komt vast en zeker er snel achter dat het niet perse hoeft, maar als hij wel zo houd is niet erg.
Code (php)
In dit geval zul je geen echo krijgen en wel om de volgende reden :
=== verglijkt ook het type variabele.
In programmeren zijn er grofweg 3 typen variabelen :
Integer (int) - Numberieke HELE waarde (vaak in de code gezien zonder strings)
Ik leg de nadruk even op HELE omdat 1.5 bijvoorbeeld geen integer is. Kom ik zo op terug
In jou geval ben je dus in dit stuk code
Twee integers bij elkaar aan het optellen.
String (str) = Dit zijn text waardes en staan in je code vaak tussen enkel dan wel dubbel quotes
In jou stuk code
echo je dus een string
Dan is er nog de double:
Double word gebruikt voor niet hele numerieke waardes zoals bijvoorbeeld 1.5 , 12.4 etc
Met een == worden waardes "oppervlakkig" vergeleken en is
6 == '6' waar
Op het moment dat je echter
6 === '6' doet is dit false.
De makkelijke manier om dit te verklaren is dat het laatste voorbeeld eingelijk '(int)6' == '(str)6' doet. (Weet dat het ingewikkelder ligt maar even simpel).
Zoals je ziet zijn die 2 dus niet gelijk , en dat verklaart waarom 6 == '6' waar is en 6 === '6' niet.
Hopelijk is het een beetje duidelijk want is langer verhaal geworden dan ik verwacht had :P
Kevin Jager op 02/12/2014 12:25:58:
Klopt het hoeft niet, maar hij is nog aan het leren dus hij komt vast en zeker er snel achter dat het niet perse hoeft, maar als hij wel zo houd is niet erg.
Jan de Laet op 02/12/2014 12:10:28:
En waarom 6 tussen quotes bij de if? Het gaat om een getal.
Klopt het hoeft niet, maar hij is nog aan het leren dus hij komt vast en zeker er snel achter dat het niet perse hoeft, maar als hij wel zo houd is niet erg.
Dat is wel erg, want een string is iets anders dan een getal. Beter meteen goed aanleren.