2011-09-05 16 views
6

mam ten kod:zmiana miesiące nazwę francuskiemu

<?php 
    echo "'".$sgps_newsletter->getEmail()."' demande en ".date('d.M.Y', strtotime($sgps_newsletter->getCreatedAt())) 
?> 

ale nazwa miesiąca jest appering w języku angielskim. Co mogę zrobić, aby pokazać to w języku francuskim? Zmieniłem kulturę domyślną na settings.yml na francuski, ale nic się nie dzieje.

Odpowiedz

11

wiem, że to stare, ale dla każdego, kto wciąż szuka tego, bardziej kompletna odpowiedź na datę w języku francuskim będzie:

//set locale 
setlocale(LC_TIME, "fr_FR"); 

Następnie

//echo date/formatting based on your locale, in this case, for French 
echo strftime("le %d %B, %Y", strtotime($sgps_newsletter->getCreatedAt()))); 
//without day of the week = le 18 septembre, 2013 

LUB

echo strftime("%A le %d %B, %Y", strtotime($sgps_newsletter->getCreatedAt()))); 
//with day of the week = mercredi le 18 septembre, 2013 

LUB

echo strftime("%d/%m/%Y", strtotime($sgps_newsletter->getCreatedAt()))) 
//numerical, separated by '/' = 18/9/2013 
7
# -------------------- 
# METHOD 1 
# -------------------- 
# set locale first 
setlocale (LC_TIME, 'fr_FR.utf8','fra'); 
// setlocale(LC_TIME, 'fr_FR.UTF8'); 
// setlocale(LC_TIME, 'fr_FR'); 
// setlocale(LC_TIME, 'fr'); 
// setlocale(LC_TIME, 'fra_fra'); 
# Examples using current time 
echo strftime('%Y-%m-%d %H:%M:%S'); // 2015-03-02 17:58:50 
echo strftime('%A %d %B %Y, %H:%M'); // lundi 02 mars 2015, 17:58 
echo strftime('%d %B %Y');   // 02 mars 2015 
echo strftime('%d/%m/%y');   // 02/03/15 
# Example with given timestamp 
$timestamp = time() ; // Any timestamp will do 
echo strftime("%d %B %Y", $timestamp) ; // 02 mars 2015 

# -------------------- 
# METHOD 2 
# -------------------- 
# using arrays without setting the locale (not recommanded) 
$day = array("Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi"); 
$month = array("janvier", "février", "mars", "avril", "mai", "juin", "juillet", "août", "septembre", "octobre", "novembre", "décembre"); 
// Now 
$date = explode('|', date("w|d|n|Y")); 
// Given time 
$timestamp = time() ; 
$date = explode('|', date("w|d|n|Y", $timestamp)); 
echo $day[$date[0]] . ' ' . $date[1] . ' ' . $month[$date[2]-1] . ' ' . $date[3] ; // Lundi 02 mars 2015 
Powiązane problemy