一到盛夏,总有人问今年哪天入伏、伏期有多长。答案不在气温上,而在干支里。这套算法沿用了千百年,规矩不算复杂,却有几处容易记混:起点看哪一天,末伏为何时长时短,为何每年的起始日总在七月中间来回挪。热不热是天气的事,哪一天算头伏却是排日子的规矩,两件事常被混着说,才显得头绪多。下面依次说清这几点,也交代它的来路与边界。
推算的第一步,是找出夏至那天,再从它之后数天干为庚的时日。遇到的第三个庚日,就是入伏的头一天,头伏固定十天,直到下一段接手。古书写得干脆:夏至三庚便数伏。为什么取第三个而不是第一个或第五个,旧书没给出太多理由,只说照此排下来,暑热与最盛的时段大致吻合。这也看得出它是一套约定俗成的排法:先有惯例,后有解释,并非从气象数据里反推出来。有人以为伏天由测候机构定下,其实是先把日子排好,再往上附会说法,顺序不能倒过来。节气的日期每年在六月二十一或二十二日,前后差一天,庚字之日又每隔十日轮一次,两个变量叠在一起,起始日便在七月十一日至二十一日之间浮动。
定了头伏,还要定末伏。规矩是从立秋那天往后数,遇到第一个庚日,就是末伏的头一天,它同样是十日。三段的次序由此确定:初伏十天,第二段接在其后,末伏自立秋后逢庚之日起算,走完这十日,暑气按旧说就算退了,这天叫出伏。三段连起来,旧称三伏。旧说以为这段时间阴气受制,宜静养少动,后来演成不少起居上的提醒,比如正午少出门、饮食清淡,那些说法与排法本身无关,属于另一路的经验。这里还有个常被忽略的细节:它的天数并非固定,而是被两头夹出来的空档。两端一定,中间自然算出,所以长度会变,算的时候要先排好头尾两份,再对起来看。
关键在夏至到立秋之间能碰上几个庚字之日。这类时点十日一遇,两个节气相隔约四十五到四十七日,其间通常出现四到五个:只碰上四个,中伏就短,整段合计三十天;碰上五个,中伏就长,合计四十天。所以有的年头是三十日,有的年头是四十日,差别就在这一处。多数年份是四十天,三十天的年头相对少些。天数多少只是庚字落点的结果,与气温高低没有必然对应,四十天的年头未必更热。由于两个节气的日期本身有小幅移动,它的落点也跟着摆动,要算准某一年的起始日,只能逐年按干支排,没有一劳永逸的公式可背。
伏的说法出现得很早,古人对盛夏另有一套解释:热到极处,阴气被迫伏藏,故称伏。天干里庚属金,火克金,于是把伏与庚连在一起。这类讲法属于旧时的物候观念,不必当作气象原理。往前追,这套排法与干支纪日的普及有关。干支记日六十天一转,比记月更细,古人用它标注发生的事情,日子久了便能看出某些日期与冷热的对应,于是借它来划定炎夏的段落。它的价值也在于稳定:干支循环不受人事影响,同样的规则可以往前推,也可以往后算,因而民间把它当成安排农事、避暑歇工的参照。边界同样清楚——它标出的是一个时段,不是每天的天气。真正决定某天是否难熬的,是湿度、云量、地形和当年的环流,同处三伏中的那些天,体感可能差出很多。把暑天当作早晚要熬一段的准备信号,比当作精确的晴雨表靠谱。
回到开头的问题:头伏由夏至后的第三个庚日定,末伏由立秋后的第一个庚日定,中伏夹在两者之间,长度随逢庚的次数在十日与二十日之间变。这套排法简单、可复算,也带着旧时对暑热的理解方式。知道日子,是为提前安排作息与劳作,不必与天气赌气。参考可以,安排才是重点。