如何编写日历代码?我的意思是我如何确定一个月的日子,是星期一,星期二或者什么的第一天。特定月份有多少天等。
我主要使用PHP& C#。但我主要是寻找
背后的逻辑答案 0 :(得分:1)
大多数语言(包括PHP和C#)将提供实用程序功能或库,使您可以使用日期而无需过多参与粗略计算。
PHP的date()
和getdate()
函数会告诉您有关给定日期的大部分详细信息,包括星期几,某几天和一年中的某一天,前提是您以时间戳格式开始。< / p>
如果要查找给定月份中第一个的详细信息,请使用PHP mktime()
函数获取所需日期的时间戳,然后将其传递到getdate()
,如上所述。
要查明一个月有多少天,您可以使用查找表(即Jan = 31等),特殊情况为2月,或使用上述方法获取下个月的第1天,并减去24小时以获得当月的最后一个月。
如果您使用的是最新版本的PHP(即5.3),则会有一个非常有用的新日期类,它取代了大多数旧的日期/时间功能,并提供了更多功能。 (它也在PHP 5.2中,但不如5.3版本好。)
答案 1 :(得分:1)
请查看MSDN中的DateTime
类型的C#。
您可以通过以下方式确定某一天的工作日:
var date = DateTime.Parse("16.10.2010");
Console.WriteLine(date.DayOfWeek);
如果您要查找一个月内的天数,请尝试以下操作:
Console.WriteLine(DateTime.DaysInMonth(date.Year, date.Month));
答案 2 :(得分:1)
看一下C#中的GregorianCalendar
类。这将根据不同的日期“规则”告诉您需要了解的日期。
这可以帮助您查找DateTime
课程无法为您管理的日期的周数。