احسان رضایی

یک توسعه دهنده، شاید هم نه.


درس های yii2 شماره 17: استفاده از تاریخ و تقویم فارسی

در yii2 , / تاریخ ارسال 1396/04/05 - 18:42 / 1 نظر / 1687 بازدید / آخرین ویرایش 1399/01/12 - 17:09

 برای کار با تقویم فارسی در yii2 نیازی به نصب extension ندارید و فقط کافیه formatter رو در محل config/main.php(اگر مثل من از yii2 advanced استفاده میکنید) پیکره بندی کنید. چیزی مثل این نمونه:

'components' => [
    'formatter' => [
        'class' => 'yii\i18n\Formatter',
        'locale' => 'fa_IR@calendar=persian',
        'calendar' => \IntlDateFormatter::TRADITIONAL,
        'dateFormat' => 'php:Y-m-d',
        'datetimeFormat' => 'php:Y-m-d H:i',
        'timeFormat' => 'php:H:i',
    ],
],

میتونید برای نمایش تاریخ و زمان از متد های خود formatter استفاده کنید. توجه داشته باشید قالب نمایش تاریخ زمان همونیه که ما در پیکره بندی formatter تعریف کردیم.

$formatter = \Yii::$app->formatter;// output: ۱۳۹۶-۰۴-۰۵ ۱۸:۳۵
echo $formatter->asDatetime('now');// output: ۱۳۹۶-۰۴-۰۵
echo $formatter->asDate('now');// output: ۱۴:۰۵
echo $formatter->asTime('now');

یا اینکه خودتون قالب نمایش رو براش تعریف کنید.

// ICU format
echo Yii::$app->formatter->asDate('now', 'yyyy-MM-dd'); // ۱۳۹۶-۰۴-۰۵
// PHP date()-format
echo Yii::$app->formatter->asDate('now', 'php:Y-m-d'); // ۱۳۹۶-۰۴-۰۵

برای مطالعه بیشتر اینجا رو ببینید. همچنین برای تبدیل تاریخ هم کتابخانه های زیادی وجود داره مثل این نمونه که میشه ازش استفاده کرد.

پیشنهاد

ارسال نظر

امیر عاجلو در تاریخ 1398/12/10 - 17:15 نوشته
سلام بسیار ساده و کاربردی . با تشکر