Попробуйте сделать дату самостоятельно, используя explode
и strtotime
:
date_default_timezone_set('America/Los_Angeles');
$date = '16.5.59';
$date_time = strtotime(implode('-', array_reverse(explode('.', $date))))
$date_str = date('d-m-Y', $date_time);
echo $date_str;
Выход: 16-5-2059
Вы ARE необходимо указать, что год 1959
вместо 2059
(или вы уверены, что это действительно 2059?)
Вы можете внести изменения с 2059
в 1959
следующим образом:
date_default_timezone_set('America/Los_Angeles');
$date = '16.5.59';
$date_arr = array_reverse(explode('.', $date))
# This line does the job. Make sure all years are between 1900 - 1999.
$date_arr[0] = '19' . $date_arr[0];
$date_time = strtotime(implode('-', $date_arr))
$date_str = date('d-m-Y', $date_time);
echo $date_str;
Надеюсь, этот ответ может вам помочь.
Вы можете разместить ваш код до сих пор пожалуйста? –
$ date = '16 .5.59 '; echo date ('Y-m-d', strtotime ($ date)); – mollie
u хотите его в формате 59.5.16? –