ma no, ma no, ma no[supersaibal]Originariamente inviato da drAlberT
tutti questi valori vengono castati (trasformati nel tipo ) in FALSE quindi dire 0=="0" è come dire FALSE==FALSE .. perchè == è un operatore booleano e quindi il casting avviene a bool e non a int o a stringa.[/supersaibal]![]()
l'operatore di CONFRONTO (qualsiasi esso sia, uguale, minore o uguale, diverso, etc. etc.) RESTITUISCE un valore booleano, ma NON converte gli operandi in booleani.
Altrimenti ogni confronto tra stringe non vuote darebbe sempre TRUE, bella forza
Credo tu abbia fatto confusione tra operatori di CONFRONTO e operatori LOGICI (and, or, etc. che necessitano ovviamente di operandi logici, quindi booleani).
Per la domanda iniziale, semplicemente === (e specularmente !==) fa un confronto anche sul tipo degli operandi, tipo che in PHP è implicito, ma esiste comunque.