Fix crypt() return value check to match PHP documentation

"Returns the hashed string or a string that is shorter than 13 characters and is
guaranteed to differ from the salt on failure." -- [PHP documentation](http://php.net/function.crypt.php)

While I was in there, I didn't see a test case for a `crypt()` "failure", and it wasn't immediately obvious to me how to create a test for it if one is needed.