急,请帮我这段C程序转成PHP程序
int password( char *to, unsigned int size, const char *password )
{
unsigned long hash_res[2]={0};
register unsigned long nr=45345333L, add=8, nr2=0x12345678L;
unsigned long tmp = 0;
if ( size < 17 )
{
return -1;
}
for (; *password ; password++)
{
if (*password == ' ' || *password == '\t')
{
continue; /* skipp space in password */
}
tmp= (unsigned long) (unsigned char) *password;
nr^= (((nr & 63)+add)*tmp)+ (nr << 8);
nr2+=(nr2 << 8) ^ nr;
add+=tmp;
}
hash_res[0]=nr & (((unsigned long) 1L << 31) -1L); /* Don't use sign bit (str2int) */;
hash_res[1]=nr2 & (((unsigned long) 1L << 31) -1L);
sprintf(to,"%08lx%08lx",hash_res[0],hash_res[1]);
return 0;
}