Template:Age in years, months and days/display
no days at all
This template employs intricate features of template syntax.
You are encouraged to familiarise yourself with its setup and parser functions before editing the template. If your edit causes unexpected problems, please undo it quickly, as this template may appear on a large number of pages. Remember that you can conduct experiments, and should test all improvements, in either the general Template sandbox or your user space before changing anything here. |
This template returns the number of full years, then surplus months, then surplus days between two specified dates. If the second set of parameters is not included, it will return the number of years, months and days between a specified date and today's date. The words "year", "month" and "day" are plural when appropriate.
The years and months are separated by a comma. Since serial commas are optional and use varies, this template does not automatically place a comma after the months. If a serial comma is desired, adding |sc=y
to the template invocation will include one.
See PBC:Age calculation templates for more information on using this kind of template.
Syntax[edit source]
{{Age in years, months and days|year= |month= |day= }}
or{{Age in years, months and days|yyyy|mm|dd|yyyy2|mm2|dd2}}
Examples[edit source]
{{Age in years, months and days|year=2001|month=1|day=15}}
returns "23 years, 11 months and 7 days"{{Age in years, months and days|2001|01|15|2008|09|05}}
returns "7 years, 7 months and 21 days"{{Age in years, months and days|2016|8|4|2016|9|5}}
returns "1 month and 1 day"
Notes[edit source]
This template can handle an ambiguous start date:
{{Age in years, months and days|year=2010|month=9}}
returns "14 years and 2 or 3 months"{{Age in years, months and days|2009|6||2011|2|21}}
returns "1 year and 7 or 8 months"
But it cannot handle an ambiguous end date:
{{Age in years, months and days|2012|11|2|2016|4}}
returns "Error: Invalid time. 3 years, 5 months and 20 days"{{Age in years, months and days|2012|11|2|2017}}
returns "Error: Invalid time. 5 years, 1 month and 20 days"
Since the length of a month varies, the number of days to roll over the number of months varies.
{{Age in years, months and days|2007|3|12|2015|6|11}}
returns "8 years, 2 months and 30 days"{{Age in years, months and days|2007|3|12|2015|7|11}}
returns "8 years, 3 months and 29 days"
To add a serial comma specify |sc=y
.
{{Age in years, months and days|year=2001|month=1|day=15|sc=y}}
returns "23 years, 11 months, and 7 days"{{Age in years, months and days|2001|1|15|2008|9|5|sc=y}}
returns "7 years, 7 months, and 21 days"{{Age in years, months and days|2016|12|8|sc=y}}
returns "8 years and 14 days"
TemplateData[edit source]
Age in years, months and days
This template returns the number of full years, surplus months, and surplus days between two specified dates. If the second set of parameters is not included, it will return the number of years, months and days between a specified date and today's date.
Parameter | Description | Type | Status | |
---|---|---|---|---|
Year ('from' date) | 1 year | The year of the (first) date | Number | required |
Month ('from' date) | 2 month | Number of the month of the (first) date | Number | required |
Day of month ('from' date) | 3 day | The day of the month of the (first) date | Number | optional |
Year ('to' date) | 4 | The year of the 'to' date, if required
| Number | optional |
Month ('to' date) | 5 | Number of the month of the 'to' date, if required
| Number | optional |
Day of month ('to' date) | 6 | The day of the month of the 'to' date, if required
| Number | optional |
Serial comma | sc | Enter 'y' to turn on the serial comma after the months
| Line | optional |
See also[edit source]