2012-02-26 518 views
1

我試圖從專有ERP數據庫創建報告。我建立了一個ODBC連接,並使用PHP從數據庫中提取數據。將時間戳從二進制轉換爲十六進制

如果我使用Microsoft SQL Server Management Studio,我可以看到一行有一個值爲0x00000000093E7FCA的TimeStamp字段(字符串類型),這顯然對應於2011-02-04。 (本表中的字段都是字符串類型不知道爲什麼看起來懶惰。)

如果我做返回的ODBC對象的的var_dump我得到:

public 'TimeStamp' => string '���� >Â' (length=8) 

如何轉換這個字符串值它的十六進制等效(在這種情況下是0x00000000093E7FCA)使用PHP?

我曾嘗試:

$row->TimeStamp + 0; // '0' ...nope. 
(binary)$row->TimeStamp; // '���� >Â' ...close! 
(int)((binary)$row->TimeStamp); // '0' ...doh! 

回答

1

你可以試試這個: bin2hex。 將二進制數據轉換爲十六進制的php實現。