Est-ce que quelqu'un connaissait un moyen d'obtenir une chaîne de date qui contient le format de la date?Obtenir le format de date comme "Y-m-d H: i: s" à partir d'une date php
<?php
$date = date ("2009-10-16 21:30:45");
// smething like this?
print date_format ($date);
?>
Je demande parce que je voudrais optimiser cette fonction, je l'ai écrit, d'habitude pour obtenir ce jour avec un autre fuseau horaire du serveur, sans faire des choses particulières
<?php
function get_timezone_offset ($timezone, $date = null, $format = null, $offset_timezone = null) {
if ($date == null) $date = date ($format);
if ($offset_timezone == null) $offset_timezone = date_default_timezone_get();
if ($format == null) $format = "Y-m-d H:i:s";
// I'd like to find a way that can avoid me to write $format and get it directly from the date i pass, but I don't know a particular method can do it
// if ($format == null) $format = date_format ($date);
$date_time = new DateTime ($date, new DateTimeZone ($offset_timezone));
$date_time->setTimeZone (new DateTimeZone ($timezone));
return $date_time->format ($format);
}
print get_timezone_offset ("Europe/Rome");
print get_timezone_offset ("Europe/Rome", date ("Y-m-d H:i:s"));
print get_timezone_offset ("Europe/Rome", date ("Y-m-d H:i:s"), "Y-m-d H:i:s");
print get_timezone_offset ("Europe/Rome", "2009-10-16 21:30:45", "Y-m-d H:i:s", "America/New_York");
?>
J'espère éviter expressions régulières pour des raisons de performances, mais je ne sais pas si cela est possible
La seule personne qui a réellement compris la question de l'OP! –