PHP: md5('240610708') == md5('QNKCDZO')
I'm not exactly clear on how PHP == works, but you can see the MD5 for yourself:    $ echo -n 240610708 | md5sum
    0e462097431906509019562988736854  -
    $ echo -n QNKCDZO | md5sum
    0e830400451993494058024219903391  -
    $ echo -n aabg7XSs | md5sum
    0e087386482136013740957780965295  -

All of them start with 0e, which makes me think that they're being parsed as floats and getting converted to 0.0.  This is why "magic" operators like == in PHP and JavaScript never should have existed in the first place.  Operators like == should be, by default, extremely boring.  PHP's just happens to be a bit more magical even than JavaScript's.