This project provides an easy to use Object Oriented API to work with persian date and time.
Provided PersianDate
class extends Standard PHP DateTime
class and has it's all capabilities.
###Installation: Open your terminal and enter:
composer require mtm/persian-date
###Usage:
When you want build a PersianDate instance:
$persianDateTime = new Mtm\PersianDate\PersianDate();
When you want build a PersianDate instance from exact date:
$persianDateTime = Mtm\PersianDate\PersianDateFactory::buildFromExactDate(null, null, null, 9, 19 ,1370);
When you want to convert PHP Standard Datetime to PersianDate instance from standard PHP Standard DateTime object:
$standardDateTime = new \DateTime();
$persianDateTime = Mtm\PersianDate\PersianDateFactory::buildFromOriginalDateTime($standardDateTime);
When you want to convert PersianDate instance to PHP Standard DateTime object:
$standardDateTime = $persianDateTime->getOriginalDateTime();
When you want to set date on PersianDate instance
$persian_year = 1370;
$persian_month = 9;
$persian_day = 19;
$persianDateTime->setDate($persian_year, $persian_month, $persian_day);
And finally when you want to print in various formats:
$persianDateTime->format("Y-m-d"); // prints: 1370-9-19
$persianDateTime->format("f y"); // prints: پاییز 94
(?) | مثال ۲ | مثال ۱ | دامنه | کاربرد های متد format() | کاراکتر |
- | - | - | - | کاراکترها با حروف کوچک | کوچک |
ب.ظ | ق.ظ | ق.ظ | ب.ظ | اوقات روز - به صورت خلاصه | a | |
! | ۴ | ۱ | ۱ - ۴ | شماره ی فصل (ربع) از سال | b |
۱۳۸۹/۱۱/۲۲ ،۰۹:۴۶:۳۱ ۰۳:۳۰ | ۱۳۹۰/۴/۴ ،۱۳:۰۸:۲۶ ۰۴:۳۰ | : طبق نمونه | Y/n/j ,H:i:s P :(ltr) ۱ قالب مرکّب | c | |
۲۳ | ۹ | ۰۱ - ۳۱ | شماره ی روز از ماه - ۲ رقمی | d | |
Asia/Tehran | Greenwich | مناطق زمانی | منطقه ی زمانی تنظیم شده | e | |
! | زمستان | تابستان | بهار تا زمستان | نام فصل با حروف فارسی | f |
۱۲ | ۷ | ۱ - ۱۲ | ساعت در روز -۱۲ساعته -۱یا۲رقمی | g | |
۱۲ | ۰۷ | ۰۱ - ۱۲ | ساعت در روز - ۱۲ ساعته - ۲رقمی | h | |
۲۱ | ۱۷ | ۰۰ - ۵۹ | دقیقه در ساعت - ۲ رقمی | i | |
۲۳ | ۲ | ۱ - ۳۱ | شماره ی روز از ماه - ۱یا۲ رقمی | j | |
! | ۱۶ | ۷۶.۲ | ۰ - ۱۰۰ | (**.?) در صد باقیمانده از سال | k |
چهار شنبه | شنبه | شنبه تا جمعه | نام روز در هفته - کامل | l | |
۱۰ | ۰۳ | ۰۱ - ۱۲ | شماره ی ماه از سال - ۲رقمی | m | |
۱۰ | ۳ | ۱ - ۱۲ | شماره ی ماه از سال - ۱یا۲رقمی | n | |
۱۳۸۹ | ۱۳۹۱ | شماره ی سال | سال هفته ای (به عدد) چهار رقمی | o | |
! | دلو | جوزا | حمل تا حوت | نام باستانی برج ها | p |
! | پلنگ | گاو | موش تا خوک | نام حیوانی سال ها | q |
۰۹:۴۶:۳۱ ۰۳۳۰ جمعه، ۲۲ بهمن ۱۳۸۹ | ۱۳:۰۸:۲۶ ۰۴۳۰ شنبه، ۴ تیر ۱۳۹۰ | : طبق نمونه | H:i:s O Y F j ,l :(ltr) ۲ قالب مرکّب | r | |
۱۷ | ۰۹ | ۰۰ - ۵۹ | شماره ی ثانیه در دقیقه - ۲ رقمی | s | |
۳۰ | ۳۱ | ۳۱ | ۳۰ | ۲۹ | تعداد روزهای (همان) ماه | t | |
۷۳۹۰۳۱ | ۰۰۰۰۰۰ | : طبق نمونه | میکرو ثانیه - ۶ رقمی | u | |
! | هشتاد و نه | نود و یک | از تا نود و نه | سال به حروف - خلاصه ی دو رقمی | v |
۳ | ۰ | ۰ - ۶ | شنبه=۰ ،عدد روز در هفته (IR) | w | |
۸۹ | ۹۱ | ۰۰ - ۹۹ | سال (به عدد) دو رقمی | y | |
۳۰۴ | ۴۱ | ۰ - (۳۶۴|۳۶۵) | تعداد روز (کامل) گذشته از سال | z | |
- | - | - | - | کاراکترها با حروف بزرگ | بزرگ |
بعد از ظهر | قبل از ظهر | : طبق نمونه | اوقات روز _ کامل | A | |
۷۱۰ | ۰۹۸ | ۰۰۰ - ۹۹۹ | GMTزمان اینترنتی،۱.۴۴ دق از۲۳:۰۰ | B | |
! | ۱۵ | ۱۴ | ...|۱۵|۱۴|... | شماره ی قرن هجری شمسی | C |
چ | ش | ش تا ج | حرف اوّل نام روز هفته، ش=شنبه | D | |
دی | خرداد | فروردین تا اسفند | نام ماه از سال - کامل | F | |
۱۹ | ۷ | ۰ - ۲۳ | ساعت در روز - ۲۴ساعته -۱یا۲رقم | G | |
۱۹ | ۰۷ | ۰۰ - ۲۳ | ساعت در روز - ۲۴ساعته -۲رقمی | H | |
۱ | ۰ | ۰ | ۱ | نشانگر طولانی بودن روز = ۱ | I | |
! | بیست و نه | دو | یک تا سی و یک | شماره ی روز از ماه به حروف | J |
! | ۸۳.۳ | ۱۴ | ۱۰۰ - ۰ | (**.?) در صد گذشته از سال | K |
۰ | ۱ | ۰ | ۱ | سال : کبیسه=۱ و غیر کبیسه=۰ | L | |
دی | خر | فر تا اس | نام ماه از سال - خلاصه | M | |
۳ | ۷ | ۱ - ۷ | یک شنبه=۱ ،عدد روز در هفته (IR) | N | |
۰۳۳۰ | ۰۴۳۰ | -۱۲۰۰ ، ۱۴۰۰ | ":" اختلاف ساعت جهانی - بدون | O | |
۰۳:۳۰ | ۰۴:۳۰ | -۱۲:۰۰ ، ۱۴:۰۰ | ":" اختلاف ساعت جهانی - با | P | |
! | ۶۱ | ۳۲۴ | (۳۶۵|۳۶۴) - ۰ | تعداد روز (کامل) باقی مانده از سال | Q |
ام | ام | ام | "واژه ی "ام | S | |
IRST | IRDT | مخفف مناطق | مخفّف منطقه ی زمانی تنظیم شده | T | |
۱۲۹۵۴۳۶۴۶۷ | ۱۲۴۳۹۵۵۳۴۶ | : طبق نمونه | timestamp (Unix) برچسب زمانی | U | |
! | هزار و سیصد و هشتاد و نه | هزار و سیصد و نود و یک | : طبق نمونه | سال به حروف - کامل | V |
۴۳ | ۱۱ | ۰۰ - (۵۲|۵۳) | شماره ی این هفته در سال - ۲رقم | W | |
۱۳۸۹ | ۱۳۹۱ | : طبق نمونه | سال (به عدد) چهار رقمی | Y | |
۱۲۶۰۰ | ۱۶۲۰۰ | -۴۳۲۰۰ ، ۵۰۴۰۰ | اختلاف ساعت جهانی به ثانیه | Z |