Je pense que vous êtes sur la bonne voie en abordant ce problème en deux étapes. Tout d'abord, vous devriez probablement vous en tenir au hachage md5 pour répondre à vos exigences «difficiles à inverser». Deuxièmement, vous pouvez prendre la sortie md5 en entrée de votre fonction "convertir en entier".
Pour la deuxième partie, qu'allez-vous exactement après? Est-ce que a pour être un nombre entier? Ou juste des caractères imprimables? Si vous cherchez à convertir votre hash en quelque chose que vous pouvez stocker dans une base de données, transmettre sur le réseau, ou pour une autre raison, la fonction convertuuencode pourrait fonctionner pour vous: http://us.php.net/manual/en/function.convert-uuencode.php
Un autre rond-point approche hackish serait d'obtenir la valeur binaire de votre hachage, et le convertir en un nombre décimal en utilisant: http://us.php.net/manual/en/function.bindec.php bien que, je n'ai jamais essayé cela et je ne sais pas si cela fonctionnerait comme vous le souhaitez.