我如何验证今天是工作日,并且当前时间在两个时间之间?我尝试了下面的代码,但我只能检查时间之后或之前。
is_past_15() -> {_, {Hour, _, _}} = calendar:local_time(), Hour >= 15.
1cklez4t1#
验证今天是工作日
-module(a). -compile(export_all). is_business_day(Date) -> calendar:day_of_the_week(Date) =< 5.
在 shell 中:
7> c(a). a.erl:2:2: Warning: export_all flag enabled - all functions will be exported % 2| -compile(export_all). % | ^ {ok,a} 8> {Date, _} = calendar:local_time(). 9> a:is_business_day(Date). true
当前时间也在两个时间之间。
-module(a). -compile(export_all). is_between(BeginDT, EndDT, DT) -> BeginSecs = calendar:datetime_to_gregorian_seconds(BeginDT), EndSecs = calendar:datetime_to_gregorian_seconds(EndDT), DTSecs = calendar:datetime_to_gregorian_seconds(DT), (BeginSecs =< DTSecs) and (DTSecs =< EndSecs).
13> BeginDT = {{2021, 1, 20}, {10, 15, 0}}. %% 1/20/21 10:15:00 AM {{2021,1,20},{10,15,0}} 14> EndDT = {{2021, 1, 20}, {10, 20, 0}}. %% 1/20/2021 10:20:00 AM {{2021,1,20},{10,20,0}} 15> DT = {{2021, 1, 20}, {10, 17, 0}}. %% 1/20/2021 10:17:00 Am {{2021,1,20},{10,17,0}} 16> a:is_between(BeginDT, EndDT, DT). true
1条答案
按热度按时间1cklez4t1#
验证今天是工作日
在 shell 中:
当前时间也在两个时间之间。
在 shell 中: