我是一名Objective-C初學者,我被分配爲我們的客戶創建iPhone應用程序。我有一些Java的背景,但在這個目標幾乎沒有經驗,這是我第一次開發一個完整的應用程序...如何將NSDate轉換爲整數以將PHP date()作爲unix時間戳?
無論如何,我目前堆棧在幾個問題。其中一個問題是我需要從我的iOS應用程序發送PHP的date
函數的整數值。我一直在尋找解決方案,但他們都處理相反的方式(詮釋到NSDate
),而不是NSDate
整數值。
我試圖解決方案,如回答here 但很明顯它返回雙,而不是一個整數...
或者this 但這不能得到System time
。
我知道我能得到當前系統的NSDate的有:
NSDate *theDay = [NSDate dateWithTimeIntervalSinceNow:[[NSTimeZone systemTimeZone] secondsFromGMT]];
但我無法弄清楚如何將其轉換爲一個整數(或長)值。
我只需要得到相同的價值,因爲我們可以在Java
與System.currentTimeMillis()
得到相同的價值。
此外,這是我第一次在這裏提問stackoverflow。所以,請讓我知道如果有什麼我應該做的/不要在這裏發佈問題等。
謝謝。
它應該請注意,NSDate默認情況下是/設計,相對於UTC/GMT,並且不包括時區信息。如果需要「本地」時間,則必須添加時區偏移(適當縮放到秒或毫秒)。 –
@HotLicks:還應該注意''System.currentTimeMillis()'(在java中)返回UTC的時間。 ;-) – lnafziger
@lnafziger感謝您快速,清楚的解釋和解決方案!我其實之前嘗試過,但它沒有從我們的PHP服務器返回正確的結果。不過,我現在在Java中運行一些快速測試,我可以確認您的代碼返回與Java的currentTimeMillis相同的結果。正如Hot Licks所指出的,可能我需要自己添加時區偏移量(因此,對於我來說,實際上沒有「簡單的方法」來通過簡單的單行方法來獲取包含「自動」時區的值)。謝謝你們花時間閱讀我的問題,並給予幫助! –