如何检查2个日期是否有30天的差异?

SHA*_*SHA -6 objective-c ios

可能重复:
如何计算两个日期之间的差异?
NSDate,比较两个日期

我有两个约会.如何检查它们之间是否有30天的差异?我实际上有一个应用程序内购买,需要在购买后每30天禁用一次.当用户购买该功能时,会保存日期,因此我需要检查日期.如果30天过去了,我需要再次禁用该功能.

Mic*_*hal 6

您可以使用timeIntervalSince1970将两个日期转换为秒,然后检查差异是否大于2592000(30*24*60*60,即30天*24小时*60分钟*60秒).

NSTimeInterval difference = [date1 timeIntervalSince1970] - [date2 timeIntervalSince1970];

if(difference >2592000)
{
 //do your stuff here
}
Run Code Online (Sandbox Code Playgroud)

编辑:对于更紧凑的版本,您可以使用- (NSTimeInterval)timeIntervalSinceDate:(NSDate*)anotherDate

NSTimeInterval difference = [date1 timeIntervalSinceDate:date2];
if(difference >2592000)
{
    //do your stuff here
}
Run Code Online (Sandbox Code Playgroud)