(Last Updated On: 2018年8月13日)先日、10年以上勘違いをしていたことがPHPの開発者MLで議論して発覚したので、その大恥を披露します。 PHPの比較とBOOL/NULL型の話です。 ことの発端はmin関数で var_dump(min(-100,-10, FALSE( or NULL), 10, 100); とするとFALSE(またはNULL)が返ってくる、というバグレポートからでした。 PHPのBOOL/NULL型は var_dump(TRUE == 1); var_dump(FALSE == 0); var_dump(NULL == 0); はそれぞれTRUEを返します。TUREは1、FALSE/NULLは0と評価されています。 算術演算の場合、BOOL/NULL型は数値として評価されます。 var_dump(TRUE + 1); // 2 var_dump(F
![PHPの比較とBOOL/NULL型の話](https://cdn-ak-scissors.b.st-hatena.com/image/square/9d2015857e00558eb990db2db4a4490aa83e71f0/height=288;version=1;width=512/https%3A%2F%2Fblog.ohgaki.net%2Fwp-content%2Fuploads%2F2013%2F11%2Fcropped-blog_header-2.jpg)