Time shown in incorrect language
This is working :

setlocale(LC_TIME, 'French_France.utf-8', 'fr.UTF8', 'fr_FR.UTF-8', 'fr.UTF-8');
//setlocale(LC_ALL, '') ;// if you try on local windows server

$annee = date("Y", strtotime($date));
$semaine= date("W", strtotime($date));

// Get the monday date of that week
$lundi = new DateTime();
$lundi-&gt;setISODate($annee , $semaine);

print "Semaine du " . strftime("%A %d %B %Y",strtotime($lundi-&gt;format('j F Y')));