par
moogli » 30 août 2012, 12:58
comme
schim59 te l'indique il y a un incrément sur la date ($day+1 sur le mktime)
prendre 2 minutes pour comprendre ton code t'aurais aidé
<?php
$s_date="29-08-2012"; // une date
$day = strtok($s_date, '-');// récupère ce qu'il y a avant le 1ère -
$month = strtok('-'); // le second
$year = strtok('-'); // le troisème
$tsp1= mktime(0,0,0, $month, $day+1, $year); // on créer un timestamp à partir des infos précédente, en ajoutant un jour
$sFormat=($sFormat=="")?"d-M-y":$sFormat; // format par défaut s'il n'existe pas déjà : la pour le coup variable $sFormat qui n'existe pas !
$result1=gmdate( $sFormat,$tsp1); // formate la date
print_r($tsp1." ".$result1."</pre>"); // affiche la date
?>
Le code fait donc bien ce que tu indique !
doc de strtok
http://fr.php.net/strtok
doc de mktime
http://fr.php.net/mktime
doc de gmdate
http://fr.php.net/gmdate
Même sasns la classe datetime, utiliser les fonctions
strftime et
strtotime font la même chose en une ligne !
maintenant si le but est de changer le format de la date, des classes toutes faites existe pour cela, tu y gagne en lisibilité (moins de ligne de code, elles sont plus claires) et en efficacité (les classes / fonction natives sont plus rapide).
@+
comme [b]schim59 [/b] te l'indique il y a un incrément sur la date ($day+1 sur le mktime)
prendre 2 minutes pour comprendre ton code t'aurais aidé
[php]<?php
$s_date="29-08-2012"; // une date
$day = strtok($s_date, '-');// récupère ce qu'il y a avant le 1ère -
$month = strtok('-'); // le second
$year = strtok('-'); // le troisème
$tsp1= mktime(0,0,0, $month, $day+1, $year); // on créer un timestamp à partir des infos précédente, en ajoutant un jour
$sFormat=($sFormat=="")?"d-M-y":$sFormat; // format par défaut s'il n'existe pas déjà : la pour le coup variable $sFormat qui n'existe pas !
$result1=gmdate( $sFormat,$tsp1); // formate la date
print_r($tsp1." ".$result1."</pre>"); // affiche la date
?>[/php]
Le code fait donc bien ce que tu indique !
doc de strtok [url]http://fr.php.net/strtok[/url]
doc de mktime [url]http://fr.php.net/mktime[/url]
doc de gmdate [url]http://fr.php.net/gmdate[/url]
Même sasns la classe datetime, utiliser les fonctions [url=http://www.php.net/strftime]strftime[/url] et [url=http://www.php.net/strtotime]strtotime[/url] font la même chose en une ligne !
maintenant si le but est de changer le format de la date, des classes toutes faites existe pour cela, tu y gagne en lisibilité (moins de ligne de code, elles sont plus claires) et en efficacité (les classes / fonction natives sont plus rapide).
@+