Перевести text в timestamp

265
28 мая 2017, 23:08

Есть текстовый <input name='time'>, куда вводится что-то типа "26.05.2017".
Нужно сохранить его как timestamp.

$time = $request->time;
$request->merge(['time' => strtotime($time)]);

А в БД сохраняется 0000-00-00 00:00:00.

$time = date_create($request->time);
    $request->time = $time;

Сохраняет 2027-05-20 17:00:00.

Answer 1

Воспользуйтесь объектом DateTime:

$date = DateTime::createFromFormat('d.m.Y', $request->time);
echo $date->getTimestamp();

Выведет:

1495811226

Я так понял это Laravel, тогда воспользуйтесь Carbon:

$date = new Carbon($request->time);

И можете так в базу и ложить, если надо в unix то можно вот так:

$date->getTimestamp();
READ ALSO
PHP mail(): Как прикрепить pdf-файл к письму?

PHP mail(): Как прикрепить pdf-файл к письму?

Нужно, чтобы вместо message прикреплялся готовый файл с сервера и отправлялся mail()Или есть другое решение ?

1006
Не работает своя функция в opencart 2.0

Не работает своя функция в opencart 2.0

подскажите почему не работает своя функция в opecart 20 делаю так в контролере:

533
Php работа с базами данных [требует правки]

Php работа с базами данных [требует правки]

Помогите, пожалуйста, написать скрипт, формирующий и обрабатывающий блок опроса мнения посетителей сайтаДля формирования блока использовать...

363