将月份数字更改为名称和土耳其语(Symfony 4)

时间:2018-04-11 12:30:31

标签: symfony datetime

我从零开始学习Symfony 4。我尝试生成一个简单的页面,通过该页面可以创建一个具有截止日期的待办事项列表。

<?php 


namespace App\Controller;

setlocale(LC_TIME, "tr_TR");

use App\Entity\Task;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\Extension\Core\Type\DateType;
use Symfony\Component\Form\Extension\Core\Type\SubmitType;
use DateTime;


class FormControllerErdem extends Controller
{

public function new1(Request $request)
{

    $task = new Task();
    $task->setTask('Görev Yaz');
    $task->setDueDate(new DateTime('tomorrow'));

    $form = $this->createFormBuilder($task)
        ->add('task', TextType::class, array('label' => 'Görev '))
        ->add('dueDate', DateType::class, array('label' => 'Son Gün','format' => 'dd-MM-yyyy','widget' => 'choice'))
        ->add('save', SubmitType::class, array('label' => 'Görev Oluştur'))
        ->getForm();

    return $this->render('new.html.twig', array(
        'form' => $form->createView(),
    ));
}

}

上面代码的结果是:

screenshot

我想要的是,例如:“12 Ocak 2018”。 Ocak意味着1月份土耳其语。我该如何管理?谢谢。

1 个答案:

答案 0 :(得分:0)

您可以在特定的日期时间对象上设置时区,如:

$date = new DateTime('2018-04-11', new DateTimeZone('Europe/Istanbul'));
echo $date->format('Y-m-d H:i:sP');