JDMonthName

(PHP 4, PHP 5, PHP 7)

JDMonthName返回月份的名称

说明

string jdmonthname ( int $julianday , int $mode )

返回一个月份名称的字符串,mode参数指定使用哪种历法和月份名称的形式。

Calendar modes
Mode Meaning Values
0 Gregorian - abbreviated Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec
1 Gregorian January, February, March, April, May, June, July, August, September, October, November, December
2 Julian - abbreviated Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec
3 Julian January, February, March, April, May, June, July, August, September, October, November, December
4 Jewish Tishri, Heshvan, Kislev, Tevet, Shevat, AdarI, AdarII, Nisan, Iyyar, Sivan, Tammuz, Av, Elul
5 French Republican Vendemiaire, Brumaire, Frimaire, Nivose, Pluviose, Ventose, Germinal, Floreal, Prairial, Messidor, Thermidor, Fructidor, Extra

参数

jday

用来计算的julian天数

calendar

历法的月份的名字

返回值

根据指定的julian天数和calendar历法参数而得到月份的名称。

User Contributed Notes

marc at linkitdesign dot com 15-Jun-2013 10:58
Regarding the jewish date system. It may be worth noting the following peculiarities, some obvious some not so.
1. Jewish days start at sunset NOT midnight so when converting from a Gregorian date to a Jewish one it might be worth asking if the date/time occurred 'after sunset'.
2. Jewish leap years follow a 19 year cycle which can be calculated like this:
function isJLeapYear($JYear) {
    if ( ((7 * $JYear + 1) % 19) < 7 )
        return true;
    else
        return false;
}
3. During a leap year a new leap-month called "Adar I" is inserted BEFORE the normal month of Adar.
4. During leap years, Adar is renamed "Adar II".
5. Adar/Adar II has 29 days
6. Adar I has 30 days
7. Cheshvan & Kislev have between 29 & 30 Days
8. Leap years have between 383 and 385 days.
8. non-leap years have between 353 and 355 days.
9 . In a 354-day year, months have alternating 30 and 29 day lengths.
10. In a 353-day year, the month of Kislev is reduced to 29 days.
11. In a 355-day year, the month of Cheshvan is increased to 30 days.
12. Leap years years follow the same pattern, with the addition of the 30-day Adar I as well.
doug at exploittheweb dot com 10-Jul-2012 06:16
<?php

/* Simplest way to get current abbreviated month name */

echo date('M');

?>
viju dot kantah at gmail dot com 21-Nov-2011 07:34
<?php

/* Simple way to get current month name */

$mons = 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");

$date = getdate();
$month = $date['mon'];

$month_name = $mons[$month];

echo
$month_name; // Displays the current month

?>
asphp at dsgml dot com 17-Apr-2011 11:58
Use this function if you prefer to use the standard calendar constants:

<?php
function jdmonthname2($julianday, $calendar, $abbrev = false) {
  if(
$calendar == CAL_GREGORIAN && $abbrev) $mode = 0;
  elseif(
$calendar == CAL_GREGORIAN && !$abbrev) $mode = 1;
  elseif(
$calendar == CAL_JULIAN && $abbrev) $mode = 2;
  elseif(
$calendar == CAL_JULIAN && !$abbrev) $mode = 3;
  elseif(
$calendar == CAL_JEWISH) $mode = 4;
  elseif(
$calendar == CAL_FRENCH) $mode = 5;
  else
$mode = 10; //use an invalid mode and let the underlying function handle it

 
return jdmonthname($julianday, $mode);
}
?>