1
我需要將系統生成的GUID轉換爲Byte [16]數組,然後將這些十進制值轉換爲十六進制值字符串。瘋狂,我知道,我非常樂於採用比我嘗試過的更有效的方法!使用PHP將GUID轉換爲Byte數組?
我試過這個GUID的PHP解壓縮()函數,但似乎無法得到正確的格式。我試過c *,C *和所有其他可能的格式。
這裏是我開始與GUID:
GUID: dwRhRSIjlGXhAAAAkuFQ0A
的字節[16]數組我試圖填充應該是這樣的:
$bytearray = array(119,4,97,69,34,35,-108,101,-31,0,0,0,-110,-31,80,-48);
一旦我得到這個$ bytearray值,我可以很容易地使用PHP的dechex()函數將這些十進制值中的每一個轉換爲它們相應的十六進制值。此轉換的最終結果應如下所示:
DEC: HEX
119: 77
4: 4
97: 61
69: 45
34: 22
35: 23
-108: 94
101: 65
-31: E1
0: 00
0: 00
0: 00
-110: 92
-31: E1
80: 50
-48: D0
再次,任何建議,非常感謝。
經過進一步調查,看來我上面使用的$ str實際上是一個base64二進制值。我現在正在研究如何將base64解碼爲十六進制。 – Gunnar 2011-05-19 06:43:23
您的解決方案讓我走上正軌!我所要做的只是base64_decode上面的$ str以獲取文本,然後使用您的代碼將文本轉換爲十六進制。再次感謝! – Gunnar 2011-05-19 07:21:24