Pour le boulot j'avez besoin de convertir des dates dans un format du genre "06-234", qui correspond au 234ème jour de l'année 2006 en "22 août 2006" pour qu'il soit facilement lisible, j'ai donc créé une fonction pour ça. Je la partage en espérant que quelqu'un d'autre en aura besoin !
Je suis encore débutant en PHP, et c'est la 1er fonction que je poste, c'est pourquoi le code n'est peut-être et surement pas optimisé à son maximum, et j'attend donc vos critique (bonne comme mauvaise) pour m'aider.
Merci
Source / Exemple :
function jour_annee($jour, $annee)
{
if ($jour >= 1 AND $jour <= 366)
{
for ($i = 0; $i <= $annee; $i=$i+4)
{
if ($i == $annee)
{
$fevrier = 29;
}
else
{
$fevrier = 28;
}
}
$janvier = 31;
$fevrier = $janvier + $fevrier;
$mars = $fevrier + 31;
$avril = $mars + 30;
$mai = $avril + 31;
$juin = $mai + 30;
$juillet = $juin + 31;
$aout = $juillet + 31;
$septembre = $aout + 30;
$octobre = $septembre + 31;
$novembre = $octobre + 30;
$decembre = $novembre + 31;
switch ($jour)
{
case $jour >= 1 AND $jour <= 31:
$mois = 'janvier';
break;
case $jour >= $janvier + 1 AND $jour <= $fevrier:
$mois = 'fevrier';
$jour = $jour - $janvier;
break;
case $jour >= $fevrier + 1 AND $jour <= $mars:
$mois = 'mars';
$jour = $jour - $fevrier;
break;
case $jour >= $mars + 1 AND $jour <= $avril:
$mois = 'avril';
$jour = $jour - $mars;
break;
case $jour >= $avril + 1 AND $jour <= $mai:
$mois = 'mai';
$jour = $jour - $avril;
break;
case $jour >= $mai + 1 AND $jour <= $juin:
$mois = 'juin';
$jour = $jour - $mai;
break;
case $jour >= $juin + 1 AND $jour <= $juillet:
$mois = 'juillet';
$jour = $jour - $juin;
break;
case $jour >= $juillet + 1 AND $jour <= $aout:
$mois = 'aout';
$jour = $jour - $juillet;
break;
case $jour >= $aout + 1 AND $jour <= $septembre:
$mois = 'septembre';
$jour = $jour - $aout;
break;
case $jour >= $septembre + 1 AND $jour <= $octobre:
$mois = 'octobre';
$jour = $jour - $septembre;
break;
case $jour >= $octobre + 1 AND $jour <= $novembre:
$mois = 'novembre';
$jour = $jour - $octobre;
break;
case $jour >= $novembre + 1 AND $jour <= $decembre:
$mois = 'decembre';
$jour = $jour - $novembre;
break;
}
}
$date_converti = $jour . " " . $mois . " " . $annee;
return $date_converti;
}
Conclusion :
Si vous avez des propositions pour l'améliorer n'hésitez pas ;)
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.