Explication détaillée des méthodes courantes de php DateTime

怪我咯
Libérer: 2023-03-12 21:42:01
original
1683 Les gens l'ont consulté

Cet article organise certaines méthodes utilisées par les objets DateTime pour faciliter la recherche et la lecture par tout le monde. Vous pouvez vous y référer si nécessaire.

Préface

Devant l'objet instancié, cela signifie que la classe native est utilisée dans le espace de noms. Si Si vous n'utilisez pas d'espace de noms, vous pouvez supprimer les précédents

1 Afficher l'heure actuelle

$datetime = new \DateTime;
print_r($datetime->format('Y-m-d H:i:s'));
Copier après la connexion

<🎜. >2. Affichez l'heure donnée

$datetime = new \DateTime(&#39;2016-06-13&#39;);
print_r($datetime);
Copier après la connexion

3. Formatez l'heure souhaitée en fonction de l'heure donnée

$datetime = \DateTime::createFromFormat(&#39;Ymd&#39;, &#39;20160618&#39;);
print_r($datetime->format(&#39;Y-m-d&#39;));
Copier après la connexion

4. Sortie Unix horodatage (la méthode 1 renverra un nombre négatif si elle est antérieure à 1990, tandis que la méthode 2 renverra false)

//方法1(php5.2):
$datetime = new \DateTime();
echo $datetime->format(&#39;U&#39;);exit;

//方法2(php5.3)推荐
$datetime = new \DateTime();
echo $datetime->getTimestamp();exit;
Copier après la connexion

5. Format à l'heure donnée en fonction de l'horodatage donné

$datetime = new \DateTime();
$datetime->setTimestamp(1465783744);
echo $datetime->format(&#39;Y-m-d H:i:s&#39;);
Copier après la connexion

6. Comparez deux dates et heures, d'année en année, de mois en mois...

$datetime1 = new \DateTime(&#39;2016-01-01 10:11:18&#39;);
$datetime2 = new \DateTime(&#39;2017-05-11 22:21:21&#39;);
$interval = $datetime1->diff($datetime2);
print_r($interval->format(&#39;%Y&#39;));//%表示使用格式化,R表示是大于这个日期(+),还是小于这个日期(-),a表示大于或小于多少天,时分秒正常使用y,m,d,h,i,s
Copier après la connexion

7 Créez une heure d'une durée de plusieurs. il y a quelques jours

Constructeur DateInterval

le paramètre de fonction est une chaîne représentant l'accord d'intervalle de temps, cette fois La convention d'intervalle commence par la lettre P, suivi d'un entier, et enfin d'un identifiant de point qui qualifie l'entier précédent. Les identifiants de période valides sont les suivants : Y (année) M (mois) D (jour) W (semaine) H (heure) M (minute) S (seconde) L'accord d'intervalle peut avoir à la fois l'heure et la date, si du temps est nécessaire. Ajouter la lettre T entre la date et l'heure. Par exemple, la convention d'intervalle P2D signifie un intervalle de deux jours et la convention d'intervalle P2DT5H2M signifie un intervalle de deux jours, cinq heures et deux minutes.

$datetime = new \DateTime();
$interval = new \DateInterval(&#39;P2DT5H&#39;);
//或者使用createFromDateString方法
//$interval = \DateInterval::createFromDateString(&#39;1 month&#39;);
//修改DateTime实例
$datetime->add($interval);
echo $datetime->format(&#39;Y-m-d H:i:s&#39;);
Copier après la connexion

8. Créer une heure il y a quelques jours

$datetime = new \DateTime();
$interval = new \DateInterval(&#39;P2DT5H&#39;);
$datetime->sub($interval);
echo $datetime->format(&#39;Y-m-d H:i:s&#39;);
//ps:有个modify方法,这个方法是减去30,并不是像前推1天,输出的还是12月
$datetime = new \DateTime(&#39;2014/12/31&#39;);
$datetime->modify( &#39;-1 month&#39; );
print_r($datetime);exit;
Copier après la connexion

9. L'heure de l'objet DateTime est différente de la date, passez l'année, le mois, le jour

$datetime = new \DateTime();
$datetime->setDate(2015, 2, 28);
echo $datetime->format(&#39;Y-m-d&#39;);exit;
Copier après la connexion

10. Réinitialisez l'heure de l'objet DateTime actuel à une heure différente, transmettez-la Heures. , minutes, secondes (paramètres facultatifs)

$datetime = new \DateTime();
$datetime->setTime(20, 20, 24);
echo $datetime->format(&#39;Y-m-d H:i:s&#39;);exit;
Copier après la connexion

11. Changer le fuseau horaire avant de formater l'heure <🎜. >

$timezone = new \DateTimeZone(&#39;Asia/Calcutta&#39;);
$datetime = new \DateTime();
$datetime->setTimezone($timezone);
print_r($datetime->format(&#39;Y-m-d H:i:s&#39;));exit;
Copier après la connexion

12. Retourner le fuseau horaire

$date = new \DateTime(null, new DateTimeZone(&#39;Asia/Shanghai&#39;));
$tz = $date->getTimezone();
echo $tz->getName();
Copier après la connexion

13. Calculer la valeur de décalage de deux fuseaux horaires

$dateTimeZoneTaipei = new \DateTimeZone("Asia/Taipei");
$dateTimeZoneJapan = new \DateTimeZone("Asia/Tokyo");
$dateTimeTaipei = new \DateTime("now", $dateTimeZoneTaipei);
$dateTimeJapan = new \DateTime("now", $dateTimeZoneJapan);
$timeOffset = $dateTimeZoneJapan->getOffset($dateTimeTaipei);
print_r($timeOffset);exit;
Copier après la connexion

14. Intervalle de temps de retour, combien de temps

$interval = new \DateInterval(&#39;P2Y4DT6H8M&#39;);
echo $interval->format(&#39;%d days&#39;);
Copier après la connexion

15. sortie les jours précédant la date actuelle. Le

constructeur de la classe DatePeriod

accepte trois paramètres et doit fournir une instance DateTime, représentant la date et l'heure de début de l'itération, et une instance DateInterval, représentant la date suivante. L'intervalle entre celle-ci et l'heure est un entier, indiquant le nombre total d'itérations. Le quatrième paramètre est facultatif et est utilisé pour spécifier explicitement la date et l'heure de fin du cycle. Au moment de l'itération, vous pouvez mettre la dernière partie du constructeur. Un paramètre est défini sur une constante  : DatePeriod::EXCLUDE_START_DATE

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!