2011-12-12 41 views
-2

以下是一些來自java腳本代碼塊的單個JavaScript語句。我想在PHP中轉換此JavaScript代碼,以便我可以在服務器端執行它。在下面的代碼片段,還有一些運營商使用,如>>>>>~^<<<<<如何將這段JavaScript重寫到PHP?

我怎樣才能把這些JavaScript函數到PHP?

function core_enc(K, F) { 
    K[F >> 5] |= 128 << ((F) %32); 
    K[(((F + 64) >>> 9) << 4) + 14] = F; 
} 

function enc_ff(C, B, G, F, A, E, D) { 
    return enc_cmn((B & G) | ((~B) & F), C, B, A, E, D); 
} 

function enc_hh(C, B, G, F, A, E, D) { 
    return enc_cmn(B^G^F, C, B, A, E, D); 
} 

function safe_add(A, D) { 
    var C = (A & 65535) + (D & 65535); 
    var B = (A >> 16) + (D >> 16) + (C >> 16); 
    return (B << 16) | (C & 65535); 
} 

function bit_rol(A, B) { 
    return (A << B) | (A >>> (32 - B)); 
} 
+5

這不是MD5哈希的代碼嗎? – zzzzBov

+0

你知道什麼是PHP? –

回答

2

這將是完全相同的運營商。演示請參見http://codepad.org/b5uZPCu4

移位運算符>><<可以直接翻譯,以及其它基本按位操作,如|(或),&(和),^(XOR),~(不),等等。 PHP數組也以相同的方式工作,並且函數具有大致相同的語法。你的JavaScript代碼應在PHP完美地工作以最小的變化(如variableName變得$variableName,您刪除var,並且>>>不PHP工作)。

編輯:如果這其實是MD5或一些代碼,PHP提供方便的功能md5爲你做到這一點。