У меня есть массив дат, как указано ниже:
$date_events = array(
0 => 'Lundi, janvier 30, 2017',
1 => 'Mardi, janvier 24, 2017',
2 => 'Mardi, janvier 17, 2017',
3 => 'Mardi, janvier 10, 2017',
4 => 'Mercredi, janvier 25, 2017',
5 => 'Lundi, janvier 2, 2017',
6 => 'Dimanche, janvier 1, 2017',
7 => 'Mardi, janvier 3, 2017',
8 => 'Lundi, février 13, 2017'
);
Я хочу преобразовать эти дни в формат «d-m-Y». Все работает нормально, когда даты на английском языке, но моя проблема с французской датой, которая не конвертируется и возвращает ’01 -01-1970 ‘. Я использую ниже код:
for( $i=0 ; $i < count($date_events) ; $i++){
$time = strtotime($date_events[$i]);
$newformat[] = date("d-m-Y",$time);
}
Может кто-нибудь помочь мне с этим преобразованием даты для французского?
$date_events = array(
0 => 'Lundi, janvier 30, 2017',
1 => 'Mardi, janvier 24, 2017',
2 => 'Mardi, janvier 17, 2017',
3 => 'Mardi, janvier 10, 2017',
4 => 'Mercredi, janvier 25, 2017',
5 => 'Lundi, janvier 2, 2017',
6 => 'Dimanche, janvier 1, 2017',
7 => 'Mardi, janvier 3, 2017',
8 => 'Lundi, février 13, 2017'
);
$frToEn = array(
'janvier'=>'jan',
'février'=>'feb',
'mars'=>'march',
'avril'=>'apr',
'mai'=>'may',
'juin'=>'jun',
'juillet'=>'jul',
'août'=>'aug',
'septembre'=>'sep',
'octobre'=>'oct',
'novembre'=>'nov',
'décembre'=>'dec',
'lundi'=>'monday',
'mardi'=>'tuesday',
'mercredi'=>'wednesday',
'jeudi'=>'thursday',
'vendredi'=>'friday',
'samedi'=>'saturday',
'dimanche'=>'sunday'
);
foreach($date_events as &$date){
$date = strtr(strtolower($date),$frToEn);
$date = array($date,date('Y-m-d',strtotime($date)));
}
print '<pre>';
print_r($date_events);
Один из способов попасть в Рим …
Разбор любого английского текстового описания даты и времени в метку времени Unix
<?php$date_events = array(
0 => 'Lundi, janvier 30, 2017',
1 => 'Mardi, janvier 24, 2017',
2 => 'Mardi, janvier 17, 2017',
3 => 'Mardi, janvier 10, 2017',
4 => 'Mercredi, janvier 25, 2017',
5 => 'Lundi, janvier 2, 2017',
6 => 'Dimanche, janvier 1, 2017',
7 => 'Mardi, janvier 3, 2017',
8 => 'Lundi, février 13, 2017'
);
$stack = array();
foreach( $date_events as $key => $value ){
$value = str_replace(",", "", $value);
$value = str_replace("Lundi", "", $value);
$value = str_replace("Mardi", "", $value);
$value = str_replace("Mercredi", "", $value);
$value = str_replace("Jeudi", "", $value);
$value = str_replace("Vendredi", "", $value);
$value = str_replace("Samedi", "", $value);
$value = str_replace("Dimanche", "", $value);
$value = str_replace("janvier", "January", $value);
$value = str_replace("février", "February", $value);
$value = str_replace("mars", "March", $value);
$value = str_replace("avril", "April", $value);
$value = str_replace("mai", "May", $value);
$value = str_replace("juin", "June", $value);
$value = str_replace("juillet", "July", $value);
$value = str_replace("août", "August", $value);
$value = str_replace("septembre", "September", $value);
$value = str_replace("octobre", "October", $value);
$value = str_replace("novembre", "November", $value);
$value = str_replace("décembre", "December", $value);
$time = strtotime($value);
$newformat = date('d-m-Y',$time);
array_push($stack, $newformat);
}
print_r($stack);