I've no certainty here, but I strongly suspect that it's a Perlism that PHP partially took.
In Perl, $a == $b would be true -- just like in PHP. However, in Perl, you use string comparison ($a eq $b) when you want to compare strings. PHP doesn't seem to have string comparison outside of ==.
As a CFML developer who has had to bear the brunt of gleeful derision, you won't get an apology from me. :-)
Modern CFML running on Railo is an awesome environment to work in: PHP-like hackability, a very consistent language spec, native JVM performance, first-class java library integration, and it's a 100% pure open source software stack.
Whereas PHP has a much slower runtime, a horrific language spec, and nothing similar to the benefit of running on a common runtime like the JVM.
You wrote nasty code in PHP that you don't clearly understand, and aren't immediately either researching (and then documenting!) why you did what you did, or failing that, recoding for sanity. Once those little hacks calcify it's all down the tubes from there.