note 113675 deleted from function.date by tularis

From: Date: Fri, 15 Nov 2013 16:15:51 +0000
Subject: note 113675 deleted from function.date by tularis
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-197531@lists.php.net to get a copy of this message
Note Submitter: nastysclaw [-AT-] Gmail [-D0T-] com ---- Pour convertir une date US en FR ou inversement Exemple d'utilisation: ConversionDate ('2013-11-14', 'FR') = 14/11/2013 ConversionDate ('14/11/2013', 'US') = 2013-11-14 Code: // Conversion de la date selon la source function ConversionDate ($date, $source) { // Si la date comporte bien 10 caractères, alors if (strlen ($date) == 10) { // Si la date est séparée par des tiret, alors if (strpos ($date, '-') !== FALSE) { // On découpe la date $explode_date = explode ('-', $date); } // Si la date est séparée par des slash, alors elseif (strpos ($date, '/') !== FALSE) { // On découpe la date $explode_date = explode ('/', $date); } // Si la date est séparée par des point, alors elseif (strpos ($date, '.') !== FALSE) { // On découpe la date $explode_date = explode ('.', $date); } // Si la date est séparée par des virgule, alors elseif (strpos ($date, ',') !== FALSE) { // On découpe la date $explode_date = explode (',', $date); } // Si la date est séparée par des point-virgule, alors elseif (strpos ($date, ';') !== FALSE) { // On découpe la date $explode_date = explode (';', $date); } // Si la date est séparée par des espace, alors elseif (strpos ($date, ' ') !== FALSE) { // On découpe la date $explode_date = explode (' ', $date); } // Si la conversion est impossible, alors else { // On retourne la date tel quel return $date; } // Si la découpe s'est bien effecutée, alors if (!empty ($explode_date[0])) { // Si la 1er découpe est le jour, alors if (strlen ($explode_date[0]) == 2) { // Si le format est FR, alors if ($source == 'FR') { // On affiche la date au format JJ/MM/AAAA return $explode_date[0].'/'.$explode_date[1].'/'.$explode_date[2]; } // Si le format est US, alors elseif ($source == 'US') { // On affiche la date au format AAAA-MM-JJ return $explode_date[2].'-'.$explode_date[1].'-'.$explode_date[0]; } // Si la source n'est pas précisée, alors else { // On retourne la date tel quel return $date; } } // Si la 1er découpe est l'année, alors if (strlen ($explode_date[0]) == 4) { // Si le format est FR, alors if ($source == 'FR') { // On affiche la date au format JJ/MM/AAAA return $explode_date[2].'/'.$explode_date[1].'/'.$explode_date[0]; } // Si le format est US, alors elseif ($source == 'US') { // On affiche la date au format AAAA-MM-JJ return $explode_date[0].'-'.$explode_date[1].'-'.$explode_date[2]; } // Si la source n'est pas précisée, alors else { // On retourne la date tel quel return $date; } } // Si la 1er découpe corresponds à rien, alors if (strlen ($explode_date[0]) != 2 && strlen ($explode_date[0]) != 4) { // On retourne la date tel quel return $date; } } // Si la découpe est impossible, alors else { // On retourne la date tel quel return $date; } } // Si la date ne comporte pas les 10 caractères, alors else { // On retourne la date tel quel return $date; } }

« previous php.notes (#197531) next »