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 |