En PHP, il arrive parfois que vous deviez convertir un format de date en un autre. Il existe plusieurs fonctions et techniques intégrées pour résoudre cette tâche efficacement.
Une méthode consiste à utiliser les fonctions date() et strtotime(). Cependant, dans certains cas, strtotime() peut renvoyer un horodatage incorrect ou ne pas reconnaître des formats de date spécifiques. Cet article explore des approches alternatives, en fonction de la version de PHP que vous utilisez.
Pour PHP 5.3 et ci-dessus, une solution plus précise consiste à utiliser la méthode DateTime::createFromFormat. Cette méthode prend deux paramètres :
Par exemple, pour convertir à partir du Format "y-m-d-h-i-s" en "Y-m-d H:i:s" format :
$dt = DateTime::createFromFormat('y-m-d-h-i-s', '14-02-2023-03-10-15'); $new_date = $dt->format('Y-m-d H:i:s');
Si vous utilisez PHP 5.2 ou version antérieure, vous pouvez analyser manuellement les éléments de date en utilisant substr(). Une fois que vous disposez de ces éléments, vous pouvez utiliser la fonction mktime() pour créer un horodatage. Ce processus, cependant, peut être fastidieux et sujet aux erreurs.
Une option plus simple pour PHP 5.2 et versions antérieures consiste à utiliser un format de date reconnu que strftime() comprend. Par exemple, vous pouvez convertir à partir du format "y-m-d-h-i-s" en utilisant le format suivant :
$old_date = date('l, F d y h:i:s'); $old_date_timestamp = strtotime($old_date); $new_date = date('Y-m-d H:i:s', $old_date_timestamp);
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!