۱۴۰۰/۰۷/۲۷

آموزش استفاده از تاریخ شمسی در سیمفونی Symfony

تاریخ شمسی در فریم ورک سیمفونی ۱۳۹۸/۰۴/۲۶

با سلام 

در قسمت از آموزش سیمفونی symfony به تبدیل تاریخ میلادی به تاریخ شمسی می پردازیم .برای نمایش تاریخ بصورت شمسی ابتدا باید باندل jalali-date-time-bundle را در سیمفونی نصب کنیم برای این کار در خط فرمان از دستور زیر استفاده میکنیم

composer require ericomgroup/jalali-date-time-bundle

بعد از نصب این باندل فایل app/AppKernel.php را ویرایش کرده و jalali-date-time-bundle را در آن فعال می کنیم بصورت زیر

class AppKernel extends Kernel
{
public function registerBundles() {
 $bundles = array(// ...// register the bundle here
 new EricomGroupJalaliDateTimeBundleJalaliDateTimeBundle() );
 }
}

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

  // get the jlali date as a service
    $jlaliDateTime = $this->container->get('jalali_date_time');

    $jlaliDateTime->date('l j F Y H:i');
    $jlaliDateTime->date('Y-m-d', false, false);
    $jlaliDateTime->date('Y-m-d', false, false, false);
    $jlaliDateTime->date("l j F Y H:i T", false, null, null, 'America/New_York');
    
    // convert to jalali
    $unixDatetime = date("U");
    $jlaliDateTime->date('l j F Y H:i', $unixDatetime);

یکی از باندل های تبدیل تاریخ شمسی به میلادی و بالعکس که یمقدار روشن تر و تمیز تر است باندل JalaliDateTime که از طریق زیر میتوانید نصب کنید.

composer require symfony_persia/symfonyjdate

و خیلی راحت می توانید از فیلتر در فایل twig خود استفاده کنید.

{{ entity.date|jdate }}

و امکان تعیین فرمت برای نمایش تاریخ نیز بصورت زیر وجود دارد

{{ entity.date|jdate('Y-m-d') }}

رای :

سیموفنی

Symfony

تاریخ شمسی

تاریخ میلادی

با سلام. باندل معرفی شده با سیمفونی ورژن 5 سازگار نبود. آیا هیچ باندل بروزرسانی شده ای هست که با ورژن 5 سیمفونی سازگار باشه؟ ممنون.
morteza : این من هم باهاش درگیر بودم.خطا دنبال کنی .باید کوتیشن حذف کنی داخل سرویس

ارسال نظر
Copyright © All right reserved.