Конвертировать Mikrotik Datetime в Mysql Date Time

0

У меня есть массив, где один из ключей - дата и время, а его формат значений выглядит так:

dec/10/2017 01:50:33

и моя проблема в том, что когда я вставляю в базу данных, значения меняются:

0000-00-00 00:00:00

Не могли бы вы помочь мне исправить это? как исправить это в php, спасибо

Теги:
codeigniter

2 ответа

1
Лучший ответ

Использовать str_replace и date и strtotime

Легко и просто:

   $date = 'dec/10/2017 01:50:33';
   $formatedDate = str_replace('/', '-', $date);
   echo date('Y-m-d H:i:s',strtotime($formatedDate));

Выход:

  2017-12-10 01:50:33
  • 0
    спасибо, брат, это сработало для меня. :)
0

Это довольно легко сделать, если вы просто переформатируете строку, чтобы функция PHP strtotime знала, что с ней делать:

<?php

// Original string
$str = "dec/10/2017 01:50:33";

// Split the date from the time
$parts = explode(' ', $str);

// Split up the date
$date_parts = explode( '/', $parts[0] );

// Reassemble so strtotime works with a recognized format
$time = strtotime( $date_parts[0] . ' ' . $date_parts[1] . ', ' . $date_parts[2] . ' ' . $parts[1] );

// Format date for MySQL
echo date('Y-m-d H:i:s', $time);

// 2017-12-10 01:50:33
  • 0
    спасибо братан за помощь, это сработало, но это сложно

Ещё вопросы

Сообщество Overcoder
Наверх
Меню