Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift-在iphone上将日期和时间对象从服务器转换为本地时间_Swift_Datetime Format - Fatal编程技术网

Swift-在iphone上将日期和时间对象从服务器转换为本地时间

Swift-在iphone上将日期和时间对象从服务器转换为本地时间,swift,datetime-format,Swift,Datetime Format,我使用php(laravel)向数据库发出请求,返回日期对象,如下所示: "lastMessageDate" : { "date" : "2016-06-06 23:37:32.000000", "timezone" : "UTC", "timezone_type" : 3 } 如何在swift中将此对象转换为iPhone的本地日期和时间 多谢各位 import Foundation let serverDateFormatter: NSDateFormatter = {

我使用php(laravel)向数据库发出请求,返回日期对象,如下所示:

"lastMessageDate" : {
  "date" : "2016-06-06 23:37:32.000000",
  "timezone" : "UTC",
  "timezone_type" : 3
}
如何在swift中将此对象转换为iPhone的本地日期和时间

多谢各位

import Foundation

let serverDateFormatter: NSDateFormatter = {
    let result = NSDateFormatter()
    result.dateFormat = "yyyy-MM-dd HH:mm:ss.SSSSSS"
    result.timeZone = NSTimeZone(forSecondsFromGMT: 0)
    return result
}()

let s = "2016-06-06 23:37:32.000000"

let d = serverDateFormatter.dateFromString(s)!
上述操作将生成一个NSDate对象。日期对象知道如何处理时区。因此,例如,如果要向用户显示日期,可以使用为本地时区设置的日期格式化程序:

let localDateFormatter: NSDateFormatter = {
    let result = NSDateFormatter()
    result.dateStyle = .MediumStyle
    result.timeStyle = .MediumStyle
    return result
}()

print(localDateFormatter.stringFromDate(d)) // prints "Jun 6, 2016, 7:37:32 PM" in my time zone.
上述操作将生成一个NSDate对象。日期对象知道如何处理时区。因此,例如,如果要向用户显示日期,可以使用为本地时区设置的日期格式化程序:

let localDateFormatter: NSDateFormatter = {
    let result = NSDateFormatter()
    result.dateStyle = .MediumStyle
    result.timeStyle = .MediumStyle
    return result
}()

print(localDateFormatter.stringFromDate(d)) // prints "Jun 6, 2016, 7:37:32 PM" in my time zone.

太完美了。谢谢,非常好。谢谢您。