Zeph (./272) :
pour "==", je suis entièrement d'accord, c'est de la merde tout autant qu'en PHP et ça n'aurait jamais du exister.

Je me sers souvent de
empty() en PHP. Je sais dans quel contexte je l'utilise, pas besoin d'écrire un long
if ($x || (is_null($x) || ($x === '') || ...). En fait paradoxalement, autant je suis très ferme sur la structure de mes bases en SQL, autant en PHP j'aime bien que
($i == 1) et
($i == '1') aient le même résultat, et que je choisisse de moi même si je veux un type strict avec ===. Je pense que ce que certains voient comme un laisser-aller ou une aberration, je le vois comme une liberté où je ne vais pas avoir (la plupart du temps) à passer par un cast ou un autre type de transtypage pour des variables qui, humainement parlant, véhicule la même information désirée. Et PHP n'est pas le langage le plus souple à ce sujet.