Формат даты с Zend и Doctrine - PullRequest
       3

Формат даты с Zend и Doctrine

2 голосов
/ 04 октября 2011

Я работаю с Zend и Doctrine и собираю дату в формате дд / мм / гггг, используя календарь jquery.Мне нужно отформатировать его, чтобы войти в MySql как гггг / мм / дд.

Я недавно начал работать с Zend и Doctrine, поэтому не уверен, где и как это форматирование должно быть сделано.Может кто-нибудь помочь мне?

Ответы [ 3 ]

1 голос
/ 04 октября 2011

Я советую вам jquery-datepiker использовать эту возможность с итальянской локализацией, чтобы иметь календарь на итальянском, но установить формат datepiker yyyy-mm-dd, чтобы у меня не было проблем с сохранением его в базе данных.в данных были взяты любые изменения.

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.js"></script>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.5/jquery-ui.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.5/i18n/jquery.ui.datepicker-it.js"></script>

//DatePicker
$('.inputDate').datepicker({
    dateFormat: 'yy-mm-dd'
});

ИЛИ

Теперь мне приходит в голову, что, если вы настаиваете на своем выборе, вы можете использовать поведение Доктрины: http://www.doctrine -project.org / blog / using-поведенческие отношения к общим свойствам

посмотрите пример setPassword.

Вы можете реализовать что-то вроде этого:

class NameModel extends BaseNameModel
{
    public function setDate_name($date_name)
    {
        list($d, $m, $y) = explode("-", $date_name);
        $newDateName = $y."-".$m."-".$d;
        $this->_set('date_name', $newDateName);
    }
}
0 голосов
/ 04 октября 2011

Я не думаю, что вам нужны Zend Framework или Doctrine для этого.Вы можете просто написать что-то вроде следующего, используя регулярное выражение:

$output = preg_replace('#(\d+)/(\d+)/(\d+)#', '\3/\2/\1', $jQueryInput);

Если вы хотите менее «немедленное» решение (то есть более расширяемое), вы также можете использовать date / strtotimeкомбинация.

Надеюсь, что помогает,

0 голосов
/ 04 октября 2011

Я даю вам функцию php, которая будет принимать дату как дд / мм / гггг и возвращать дату гггг / мм / дд.

function dateconvert($dateOriginal)
{
    $dateOriginal = preg_replace("/[^0-9\/]/","",$dateOriginal); //sanitizing
    $temp = explode("/",$dateOriginal);
    $dateNew = $temp[2]."-".$temp[1]."-".$temp[0];
    $dateNew = date("Y-m-d", strtotime($dateNew));
    return $dateNew;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...