php-doc-en/reference/calendar/functions/easter-days.xml
Christoph Michael Becker 789af83432 Generate calendar methodsynopses based on stubs
Based on a patch contributed by Máté Kocsis <kocsismate@woohoolabs.com>.


git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@351553 c90b9560-bf6c-de11-be94-00142212c4b1
2020-11-23 22:36:15 +00:00

150 lines
4.4 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="function.easter-days" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>easter_days</refname>
<refpurpose>Get number of days after March 21 on which Easter falls for a given year</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>int</type><methodname>easter_days</methodname>
<methodparam choice="opt"><type class="union"><type>int</type><type>null</type></type><parameter>year</parameter><initializer>&null;</initializer></methodparam>
<methodparam choice="opt"><type>int</type><parameter>mode</parameter><initializer><constant>CAL_EASTER_DEFAULT</constant></initializer></methodparam>
</methodsynopsis>
<para>
Returns the number of days after March 21 on which Easter falls
for a given year. If no year is specified, the current year is
assumed.
</para>
<para>
This function can be used instead of
<function>easter_date</function> to calculate Easter for years
which fall outside the range of Unix timestamps (i.e. before 1970
or after 2037).
</para>
<para>
The date of Easter Day was defined by the Council of Nicaea in
AD325 as the Sunday after the first full moon which falls on or
after the Spring Equinox. The Equinox is assumed to always fall
on 21st March, so the calculation reduces to determining the date
of the full moon and the date of the following Sunday. The
algorithm used here was introduced around the year 532 by
Dionysius Exiguus. Under the Julian Calendar (for years before
1753) a simple 19-year cycle is used to track the phases of the
Moon. Under the Gregorian Calendar (for years after 1753 -
devised by Clavius and Lilius, and introduced by Pope Gregory
XIII in October 1582, and into Britain and its then colonies in
September 1752) two correction factors are added to make the
cycle more accurate.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>year</parameter></term>
<listitem>
<para>
The year as a positive number. If omitted or &null;, defaults to the
current year according to the local time.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>mode</parameter></term>
<listitem>
<para>
Allows Easter dates to be calculated based
on the Gregorian calendar during the years 1582 - 1752 when set to
<constant>CAL_EASTER_ROMAN</constant>. See the <link linkend="calendar.constants">calendar constants</link> for more valid
constants.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
The number of days after March 21st that the Easter Sunday
is in the given <parameter>year</parameter>.
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>8.0.0</entry>
<entry>
<parameter>year</parameter> is nullable now.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title><function>easter_days</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
echo easter_days(1999); // 14, i.e. April 4
echo easter_days(1492); // 32, i.e. April 22
echo easter_days(1913); // 2, i.e. March 23
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>easter_date</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->