PHP Calendar 函数.docx
《PHP Calendar 函数.docx》由会员分享,可在线阅读,更多相关《PHP Calendar 函数.docx(23页珍藏版)》请在冰豆网上搜索。
PHPCalendar函数
PHPCalendar函数
∙PreviousPage
∙NextPage
PHPCalendar简介
当使用不同的历法格式时,calendar函数很有用。
它所基于的标准是儒略日计数(Juliandaycount)。
编者注:
Juliandaycount是从January1,4713B.C.开始计算的,中文译为儒略日计数或恺撒日计数。
请注意,Juliandaycount(儒略日计数)与Juliancalendar(儒略历)不是一回事。
注释:
如需在日历格式之间转换,必须首先转换为Juliandaycount,然后再转换为日历格式。
安装
PHP的windows版本已内建了对日历扩展的支持。
因此,Calendar函数会自动工作。
不过,如果您运行的是PHP的Linux版本,就不得不通过--enable-calendar编译PHP,这样日历函数才能工作。
PHPCalendar函数
PHP:
指示支持该函数的最早的PHP版本。
函数
描述
PHP
cal_days_in_month()
针对指定的年份和日历,返回一个月中的天数。
4
cal_from_jd()
把儒略日计数转换为指定日历的日期。
4
cal_info()
返回有关给定日历的信息。
4
cal_to_jd()
把日期转换为儒略日计数。
4
easter_date()
返回指定年份的复活节午夜的Unix时间戳。
3
easter_days()
返回指定年份的复活节与3月21日之间的天数。
3
FrenchToJD()
将法国共和历法转换成为儒略日计数。
3
GregorianToJD()
将格利高里历法转换成为儒略日计数。
3
JDDayOfWeek()
返回日期在周几。
3
JDMonthName()
返回月的名称。
3
JDToFrench()
把儒略日计数转换为法国共和国历法。
3
JDToGregorian()
把儒略日计数转换为格利高里历法。
3
jdtojewish()
把儒略日计数转换为犹太历法。
3
JDToJulian()
把儒略日计数转换为儒略历。
3
jdtounix()
把儒略日计数转换为Unix时间戳。
4
JewishToJD()
把犹太历法转换为儒略日计数。
3
JulianToJD()
把儒略历转换为儒略日计数。
3
unixtojd()
把Unix时间戳转换为儒略日计数。
4
PHPCalendar常量
PHP:
指示支持该常量的最早的PHP版本。
常量
描述
PHP
CAL_GREGORIAN
Gregoriancalendar
3
CAL_JULIAN
Juliancalendar
3
CAL_JEWISH
Jewishcalendar
3
CAL_FRENCH
FrenchRepublicancalendar
3
CAL_NUM_CALS
3
CAL_DOW_DAYNO
3
CAL_DOW_SHORT
3
CAL_DOW_LONG
3
CAL_MONTH_GREGORIAN_SHORT
3
CAL_MONTH_GREGORIAN_LONG
3
CAL_MONTH_JULIAN_SHORT
3
CAL_MONTH_JULIAN_LONG
3
CAL_MONTH_JEWISH
3
CAL_MONTH_FRENCH
3
CAL_EASTER_DEFAULT
4
CAL_EASTER_DEFAULT
4
CAL_EASTER_ROMAN
4
CAL_EASTER_ALWAYS_GREGORIAN
4
CAL_EASTER_ALWAYS_JULIAN
4
CAL_JEWISH_ADD_ALAFIM_GERESH
5
CAL_JEWISH_ADD_ALAFIM
5
CAL_JEWISH_ADD_GERESHAYIM
PHPcal_days_in_month()函数
PHPArray函数
定义和用法
cal_days_in_month()函数针对指定的年份和日历,返回一个月中的天数。
语法
cal_days_in_month(calendar,month,year)
参数
描述
calendar
必需。
规定要使用的历法。
month
必须。
规定月。
year
必须。
规定年。
例子
php
$d=cal_days_in_month(CAL_GREGORIAN,10,2005);
echo("Therewas$ddaysinOctober2005");
?
>
输出:
Therewas31daysinOctober2005
PHPArray函数
PHPcal_from_jd()函数
PHPArray函数
定义和用法
cal_from_jd()函数把儒略日计数转换为指定历法的日期。
语法
cal_from_jd(jd,calendar)
参数
描述
jd
必需。
一个数字(儒略日计数)。
calendar
必需。
规定要使用的历法。
可以使用下面这些常量:
∙CAL_GREGORIAN
∙CAL_JULIAN
∙CAL_JEWISH
∙CAL_FRENCH
例子
php
$d=unixtojd(mktime(0,0,0,1,18,2006));
print_r(cal_from_jd($d,CAL_GREGORIAN));
?
>
输出:
Array
(
[date]=>1/18/2006
[month]=>1
[day]=>18
[year]=>2006
[dow]=>3
[abbrevdayname]=>Wed
[dayname]=>Wednesday
[abbrevmonth]=>Jan
[monthname]=>January
)
PHPArray函数
PHPcal_info()函数
PHPArray函数
定义和用法
cal_info()函数返回一个数组,其中包含了关于给定历法的信息。
所返回的数组包含这些元素:
calname,calsymbol,month,abbrevmonth以及maxdaysinmonth。
语法
cal_from_jd(jd,calendar)
参数
描述
calendar
必需。
规定要使用的历法。
可以使用下面这些常量:
∙CAL_GREGORIAN
∙CAL_JULIAN
∙CAL_JEWISH
∙CAL_FRENCH
提示和注释
提示:
在PHP5中,如果没有指定calendar参数,则返回所有被支持的历法的信息。
例子
php
$calinfo=cal_info(0);
print_r($calinfo);
?
>
输出:
Array
(
[months]=>Array
(
[1]=>January
[2]=>February
[3]=>March
[4]=>April
[5]=>May
[6]=>June
[7]=>July
[8]=>August
[9]=>September
[10]=>October
[11]=>November
[12]=>December
)
[abbrevmonths]=>Array
(
[1]=>Jan
[2]=>Feb
[3]=>Mar
[4]=>Apr
[5]=>May
[6]=>Jun
[7]=>Jul
[8]=>Aug
[9]=>Sep
[10]=>Oct
[11]=>Nov
[12]=>Dec
)
[maxdaysinmonth]=>31
[calname]=>Gregorian
[calsymbol]=>CAL_GREGORIAN
)
PHPArray函数
PHPcal_to_jd()函数
PHPArray函数
定义和用法
cal_to_jd()函数把指定的日期转换为儒略日计数。
语法
cal_to_jd(calendar,month,day,year)
参数
描述
calendar
必需。
规定要使用的历法。
可以使用下面这些常量:
∙CAL_GREGORIAN
∙CAL_JULIAN
∙CAL_JEWISH
∙CAL_FRENCH
month
必需。
规定月。
day
必需。
规定日。
year
必需。
规定年。
例子
php
$d=cal_to_jd(CAL_GREGORIAN,10,03,2005);
echo($d);
?
>
输出:
2453647
PHPArray函数
PHPeaster_date()函数
PHPArray函数
定义和用法
easter_date()函数返回指定年份的复活节午夜的Unix时间戳。
输入一个年份,则以UNIX时间戳记的格式返回该年的复活节日期,若没有输入年份,则计算当年的日期。
语法
easter_date(year)
参数
描述
year
可选。
定义用于计算复活节日期的年份。
若省略,使用当年。
提示和注释
注释:
如果年份在Unix时间戳的范围之外(1970之前或2037之后),该函数会生成一个警告。
可使用easter_days()代替easter_date()来计算年份在范围之外的复活节日期。
例子
php
echo(easter_date()."
");
echo(date("M-d-Y",easter_date())."
");
echo(date("M-d-Y",easter_date(2000))."
");
echo(date("M-d-Y",easter_date(2001))."
");
echo(date("M-d-Y",easter_date(2002)));
?
>
输出:
1145138400
Apr-16-2006
Apr-23-2000
Apr-15-2001
Mar-31-2002
PHPArray函数
PHPeaster_days()函数
PHPArray函数
定义和用法
easter_days()函数返回指定年份的复活节与3月21日之间的天数。
输入一个年份,则计算该年复活节与三月二十一日之间的日期数,若没有输入年份,则以当年计算。
这个函数可以用来替代easter_date()在1970-2037年范围外无法计算的问题。
语法
easter_date(year)
参数
描述
year
可选。
定义用于计算复活节日期的年份。
若省略,使用当年。
method
可选。
允许你计算机与其它历法的复活节日期。
例如,如果设置为CAL_EASTER_ROMAN,则使用1582-1752年期间的格利高里历法。
例子
php
echo(easter_days()."
");
echo(easter_days(1990)."
");
echo(easter_days(1342)."
");
echo(easter_days(2050);
?
>
输出:
26
25
10
20
PHPArray函数
PHPFrenchToJD()函数
PHPArray函数
定义和用法
FrenchToJD()函数将法国共和历法转换成为儒略日计数。
语法
frenchtojd(month,day,year)
参数
描述
month
必需。
规定月
day
必需。
规定日
year
可选。
必须在1到14的范围内。
提示和注释
法国共和历法是法国革命期间提出的一种历法,从1793年晚期开始,法国政府使用了大约12年。
该函数只转换1到14年内的日期(格利高里历1792年9月22日-1806年9月22日)。
例子
php
$d=frenchtojd(3,3,14);
echo($d);
?
>
输出:
2380650
PHPArray函数
PHPGregorianToJD()函数
PHPArray函数
定义和用法
GregorianToJD()函数将格利高里历法转换成为儒略日计数。
语法
gregoriantojd(month,day,year)
参数
描述
month
必需。
规定月
day
必需。
规定日
year
可选。
合法的范围是4714B.C.到9999A.D。
提示和注释
尽管该函数可处理4714B.C.之前的日期,您还是要注意格利高里历法在1582年才建立,一些国家甚至更晚才接受它(大不列颠在1752年,苏联在1918年,希腊在1923年)。
大部分欧洲国家使用罗马儒略历(公历)先于格利高里历法。
例子
php
$jd=gregoriantojd(10,3,1975);
echo($jd."
");
$gregorian=jdtogregorian($jd);
echo($gregorian);
?
>
输出:
2442689
10/3/1975
PHPArray函数
PHPJDDayOfWeek()函数
PHPArray函数
定义和用法
JDDayOfWeek()函数返回日期在周几。
语法
jddayofweek(jd,mode)
参数
描述
jd
必需。
数字(儒略日计数)。
mode
可选。
定义返回的内容(数字还是字符串)。
模式值:
∙0-默认。
以整数返回周的天。
(0为周日,1为周一...余类推)
∙1-返回包含周的天的字符串。
(英文-格里高里历)
∙2-返回包含周的天的简写的字符串。
(英文-格里高里历)
例子
php
$jd=cal_to_jd(CAL_GREGORIAN,date("m"),date("d"),date("Y"));
echo(jddayofweek($jd,1));
?
>
输出:
Thursday
PHPArray函数
PHPJDMonthName()函数
PHPArray函数
定义和用法
JDMonthName()函数返回指定历法的月份字符串。
语法
jdmonthname(jd,mode)
参数
描述
jd
必需。
数字(儒略日计数)。
mode
可选。
定义把儒略日计数转换为哪种历法,以及返回哪种月份名称。
模式值:
∙0-格里高里历(缩写)(Jan,Feb,Mar,...)
∙1-格里高里历(January,February,March,...)
∙2-凯撒历(缩写)(Jan,Feb,Mar,...)
∙3-凯撒历(January,February,March,...)
∙4-犹太历(Tishri,Heshvan,Kislev,...)
∙5-法国共和历(Vendemiaire,Brumaire,Frimaire,...)
例子
php
$jd=cal_to_jd(CAL_GREGORIAN,date("m"),date("d"),date("Y"));
echo(jdmonthname($jd,1));
?
>
输出:
January
PHPArray函数
PHPJDToFrench()函数
PHPArray函数
定义和用法
JDToFrench()函数把儒略日计数转换为法国共和国历法。
语法
jdtofrench(jd)
参数
描述
jd
必需。
数字(儒略日计数)。
提示和注释:
注释:
该函数以"month/day/year"的格式返回一个字符串。
提示:
法国共和历法是法国革命期间提出的一种历法,从1793年晚期开始,法国政府使用了大约12年。
例子
php
$d=jdtofrench(2380650);
echo($d);
?
>
输出:
3/3/14
PHPArray函数
PHPJDToGregorian()函数
PHPArray函数
定义和用法
JDToGregorian()函数把儒略日计数转换为格利高里历法。
语法
jdtogregorian(jd)
参数
描述
jd
必需。
数字(儒略日计数)。
提示和注释:
注释:
该函数以"month/day/year"的格式返回一个字符串。
例子
php
$jd=gregoriantojd(10,3,1975);
echo($jd."
");
$gregorian=jdtogregorian($jd);
echo($gregorian);
?
>
输出:
2442689
10/3/1975
PHPArray函数
PHPJDToJewish()函数
PHPArray函数
定义和用法
JDToJewish()函数把儒略日计数转换为犹太历法
语法
JDToJewish(jd)
参数
描述
jd
必需。
数字(儒略日计数)。
hebrew
可选。
True指示希伯来语输出格式。
fl
可选。
定义希伯来语输出格式,可用的格式有:
∙CAL_JEWISH_ADD_ALAFIM_GERESH
∙CAL_JEWISH_ADD_ALAFIM
∙CAL_JEWISH_ADD_GERESHAYIM
例子
php
echo(jdtojewish(gregoriantojd(10,8,2002)));
?
>
输出:
2/2/5763
PHPArray函数
PHPJDToJulian()函数
PHPArray函数
定义和用法
JDToJulian()函数把儒略日计数转换为儒略历。
语法
JDToJulian(jd)
参数
描述
jd
必需。
数字(儒略日计数)。
提示和注释:
注释:
该函数以"month/day/year"的格式返回一个字符串。
例子
php
$jd=juliantojd(10,3,1975);
echo($jd."
");
$julian=jdtojulian($jd);
echo($julian);
?
>
输出:
2442702
10/3/1975
PHPArray函数
PHPJDToUnix()函数
PHPArray函数
定义和用法
JDToUnix()函数把儒略日计数转换为Unix时间戳。
语法
JDToUnix(jd)
参数
描述
jd
必需。
数字(儒略日计数)。
提示和注释:
注释:
如果参数jd不在Unix新纪元之中(意味着格利高里年必须介于1970和2037之间,或者jd>=2440588且jd<=2465342),则该函数将返回false。
所返回的时间是本地时间。
例子
php
$jd=gregoriantojd(10,3,1970);
$unix=jdtounix($jd);
echo($unix);
?
>
输出:
23760000
PHPArray函数
PHPJewishToJD()函数
PHPArray函数
定义和用法
JewishToJD()函数把犹太历法转换为儒略日计数。
语法
JDToUnix(jd)
参数
描述
month
必需。
规定月。
day
必需。
规定日。
year
必需。
规定年。
提示和注释:
注释:
有效的范围为犹太历法公元前3761年起。
犹太历法存在了数千年,但早期并没有公式化的开始月份计算法。
每年的第一个月为首次观测到的新月。
例子
php
echo(jewishtojd(2,2,5763));
?
>
输出:
2452556
PHPArray函数
PHPJulianToJD()函数
PHPArray函数
定义和用法
JulianToJD()函数把儒略历转换为儒略日计数。
语法
JDToUnix(jd)
参数
描述
month
必需。
规定月。
day
必需。
规定日。
year
必需。
规定年。
合法的范围是4713B.C.到9999A.D。
提示和注释:
注释:
有效的范围为凯撒历法公元前4713年至公元9999年。
该函数能计算到公元前4713年,但这是不太有意义的。
凯撒历法是在公元前46年建立的,但一些细节等到公元8年才稳定下来。
例子
php
$jd=juliantojd(10,3,1975);
echo($jd."
");
$julian=jdtojulian($jd);
echo($julian);
?
>
输出:
2442702
10/3/1975
PHPArray函数
PHPUnixToJD()函数
PHPArray函数
定义和用法
UnixToJD()函数把Unix时间戳转换为儒略日计数。
语法
unixtojd(timestamp)
参数
描述
timestamp
可选。
提示和注释:
注释:
Unix时间戳指示的是从格利高里历(不是罗马儒略历)的1970年1月1日至今的秒数。
例子
php
echo(unixtojd());
?
>
输出:
2453755
PHPArray函数