2012-03-06 3 views
1

У меня есть этот метод ниже в Java и нуждаются в точный эквивалент в PHP, как сравниваются оба хэша ..PHP эквивалент Java MessageDigest MD5

Java-метода:

public String getMD5(String inStr) 
{ 
    MessageDigest md5 = null; 
    try { 
     md5 = MessageDigest.getInstance("MD5"); 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } 
    char[] charArray = inStr.toCharArray(); 
    byte[] byteArray = new byte[charArray.length]; 
    for (int i = 0; i < charArray.length; i++) 
     byteArray[i] = (byte) charArray[i]; 
     byte[] md5Bytes = md5.digest(byteArray); 
     StringBuffer hexValue = new StringBuffer(); 
     for (int i = 0; i < md5Bytes.length; i++) { 
      int val = ((int) md5Bytes[i]) & 0xff; 
      if (val < 16) 
       hexValue.append("0"); 
       hexValue.append(Integer.toHexString(val)); 
      } 
      return hexValue.toString(); 
    } 

Я в настоящее время используя метод склепа для php.

Любые идеи?

Спасибо.

ответ

5

Это не работает для вас?

$str = 'apple'; 
$hash = md5($str); 

Это создаст хеш-память md5 в php. Являются ли вывод обеих функций не равными?

+0

выглядит проще в php :) –