strftime et preg_match
Posté : 20 mai 2012, 00:13
salut,
est-ce que quelqu'un a déjà rencontré ce problème :
je récupère deux dates dans ma base de donnée sous ce format:
je veux les convertir en date littérale française avec strftime :
Quelqu'un a une idée?
est-ce que quelqu'un a déjà rencontré ce problème :
je récupère deux dates dans ma base de donnée sous ce format:
DATE_FORMAT (article_creation_date, \'%Y-%m-%d-delimiter- à %Hh%i\') AS creationDate
DATE_FORMAT (article_modif_date, \'%Y-%m-%d-delimiter- à %Hh%i\') AS modifDate
les dates (elles sont identiques) que je récupère correspondent à :
Code : Tout sélectionner
2012-05-09-delimiter- à 11h24$elements = explode('-delimiter-', $data['creationDate']);
if (setlocale(LC_TIME, 'fr_FR') == '')
{
setlocale(LC_TIME, 'FRA'); // windows problem correction
$day_format = '%#d';
}
else
{
$day_format = '%e';
}
$frenchDate = strftime("%A $day_format %B %Y", strtotime($elements[0])); // exemple : mercredi 9 mai 2012
//$frenchDate = strval (utf8_encode (strftime("%A $day_format %B %Y", strtotime($elements[0])))); // ne change rien
$frenchDate .= $elements[1]; // exemple : mercredi 9 mai 2012 à 11h24
$data['creationDate'] = $frenchDate;
$data['modifDate'] = 'mercredi 9 mai 2012 à 11h24'; // j'écrase en dur avec la vraie date
echo $data['creationDate'].'<br/>'; // affiche bien : mercredi 9 mai 2012 à 11h24
echo $data['modifDate'].'<br/>'; // affiche bien : mercredi 9 mai 2012 à 11h24
if ($data['creationDate'] == $data['modifDate']) echo 'EQUALS<br/>'; // pas d'echo, pourquoi???
if ($data['creationDate'] === $data['modifDate']) echo 'STRONG EQUALS<br/>'; // pas d'échon, pourquoi?
je récupère les données dans ma variable en testant avec un preg_match pour ne pas prendre n'importe quelles valeurs:
public function setDate($date)
{
if (is_string($date) && preg_match('`[a-zéû]+ (1er|[0-9]{1,2}) [a-zéû]+ [0-9]{4} à [0-9]{2}h[0-9]{2}`', $date))
$this->date= $date;
}
Seule la donnée que j'ai entré en dur passe le preg_match, l'autre ne passe pas, pourtant les echos m'affichent la même chose!Quelqu'un a une idée?