Pyöritän koneellani XAMPP:ia ja ajan sillä PHP-skriptini. Jostain kumman syystä kaikki valmisskriptit (foorumit yms.) toimivat normaalisti, mutta jostain syystä jopa itse koodatut tavalliset if-else-lausekkeet eivät toimi.
Mielestäni seuraavassa koodissa ei ole mitään vikaa, mutta se kuitenkin järjenvastaisesti ulostaa aina luvun 1.
Missä vika?
Laita ehtoon ($luku==2).
Jos laitat ($luku=2), muuttuja $luku saa arvon 2 ja lauseke on tosi.
Juu, nyt rupes toimimaan.
$luku=1;
if ($luku=2)
echo "1";
else
echo "2";
?>
suomennos:
luku on yksi;
jos luku saa arvon kaksi;
tulosta yksi;
muulloin tulosta kaksi;
Tommittaja kirjoitti:
suomennos:
luku on yksi;
jos luku saa arvon kaksi;
Niin kai alkuperäinen kysyjä luuli, että tuossa käy.. Oikeasti tuon olennaisen rivin suomennos olisi:
$luku on kaksi, jos kaksi tulkitaan todeksi:
Operaattoria = käytetään siis arvon syöttämiseen muuttujalle, kun taas operaattoria == käytetään tarkistamaan, onko muuttujalla jokin tietty arvo.
Aihe on jo aika vanha, joten et voi enää vastata siihen.