A PHP-ban tapasztalt feltétel hiba
Sziasztok
Lenne itt egy érdekesség amit nemrég vettem észre a feltételek kapcsán.
teszt:Az eredmény kicsit meglepő volt.
Felmerült kérdések:
- Hogyan vizsgálja a php a feltételeket
- Esetleg kasztolás megy végbe
- Hogyan tud összehasonlítani különböző típusú változókat
Ez valójában egy kérdésnek is vehető sőt az is csak kicsit boncolgattam.
Lehet hogy ezek triviális kérdés, de nem vagyok tisztába velük azért kérdezem őket.
Maga a php működése érdekelne.
Előre is kösz
■ Lenne itt egy érdekesség amit nemrég vettem észre a feltételek kapcsán.
teszt:
<?php
var_dump(0 == ''); // bool(true)
var_dump(0 == ""); // bool(true)
var_dump(0 == "a"); // bool(true)
var_dump(0 == "aa"); // bool(true)
var_dump(0 == "b"); // bool(true)
var_dump(0 == 'a'); // bool(true)
var_dump(0 == 'b'); // bool(true)
var_dump(0 == '0'); // bool(true)
var_dump(0 == "1"); // bool(false)
var_dump(0 == 1); // bool(false)
var_dump(0 == 0); // bool(true)
?>
Felmerült kérdések:
- Hogyan vizsgálja a php a feltételeket
- Esetleg kasztolás megy végbe
- Hogyan tud összehasonlítani különböző típusú változókat
Ez valójában egy kérdésnek is vehető sőt az is csak kicsit boncolgattam.
Lehet hogy ezek triviális kérdés, de nem vagyok tisztába velük azért kérdezem őket.
Maga a php működése érdekelne.
Előre is kösz
Érdekes?
Érdemes elolvasni a Converting to boolean fejezetet, amire maga az if leírása is utal. És igen castolás történik. Erről is olvashatsz a hivatalos dokumentációban.
Dinamikus típusság
Pythonban ez pont nincs
Típusosság erőssége
Megállapítás
Ja és köszönöm a hozzászólásokat.