Very illogical php value comparisons
<p>I stumbled upon a very strange bit of PHP code.  Could someone explain why this is happening?  <strong>**<em>BONUS POINTS</em>**</strong> if you can tell my why this is useful. </p>

<pre><code>&lt;?php
if(0=='a'){
    print ord(0)." should NEVER equal ".ord('a')."&lt;br&gt;";
}
if(false==0){
       print "false==0&lt;br&gt;";
}
if('a'==false){
       print "a==false&lt;br&gt;";
}
?&gt;
</code></pre>

<p>And the resulting output:</p>

<pre><code>48 should NEVER equal 97
false==0
</code></pre>
