Maison >développement back-end >Problème PHP >Comment obtenir l'heure actuelle en php

Comment obtenir l'heure actuelle en php

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼original
2019-08-30 10:00:0715462parcourir

Comment obtenir l'heure actuelle en php

1. Obtenez l'horodatage actuel

Méthode 1 : via la fonction temporelle

time();

méthode 2 : Via l'élément REQUEST_TIME

$_SERVER['REQUEST_TIME'];

dans $_SERVER Méthode 3 : Via la fonction strtotime

strtotime('now');

2. Obtenez l'heure actuelle

via le format de la fonction de date Timestamp

echo date('Y-m-d h:i:s', time()); // 2018-10-3 15:57:05

3. Problème de fuseau horaire

Les méthodes ci-dessus ont toutes des problèmes de fuseau horaire :

Méthode. 1 : Modifier dans php.ini Définir le fuseau horaire chinois

date.timezone = PRC

Méthode 2 : Définir temporairement le fuseau horaire chinois dans le fichier php

date_default_timezone_set('PRC');

Recommandations associées : "Tutoriel PHP"

php obtient l'heure et l'horodatage actuels

La première chose que vous devez savoir est que la méthode pour obtenir l'heure en php est date(), et les méthodes pour obtenir l'horodatage en php sont time() et strtotime(). Les éléments suivants sont expliqués respectivement :

le format date() est : date($format, $timestamp), format est le format, timestamp est l'horodatage (facultatif).

time() Renvoie l'horodatage Unix de l'heure actuelle, sans arguments.

strtotime($time, $now) Analyse toute description datetime de texte anglais en un horodatage Unix. $time est obligatoire et spécifie la chaîne d'heure à analyser ; $now est utilisé pour calculer l'horodatage de la valeur de retour. Si ce paramètre est omis, l'heure actuelle est utilisée.

Exemples d'utilisation de date($format) :

echo date('Y-m-d');输出结果:2018-10-03
echo  date('Y-m-d H:i:s');输出结果:2018-10-03 23:00:00
echo  date('Y-m-d', time());输出结果:2018-10-03 23:00:00(结果同上,只是多了一个时间戳参数)
(时间戳转换为日期格式的方法)
echo  date('Y').'年'.date('m').'月'.date('d').'日',输出结果:2018年10月3日

Ce ne sont que quelques exemples. Ce ne sont que des changements de format. au format chaîne :

a - "am" ou "pm"

A - "AM" ou "PM"

d - jour, deux chiffres, si moins plus de deux S'il y a des chiffres, ajoutez des zéros devant : "01" à "31"

D - jour de la semaine, trois lettres anglaises telles que : "Fri"

F - mois, nom anglais complet ; Par exemple : "Janvier"

h - heure au format 12 heures tel que : "01" à "12"

H - heure en Format 24 heures ; tel que : "00" à "23"

g - heure au format 12 heures, n'ajoutez pas de zéros s'il y a moins de deux chiffres tel que : "1" à 12 ; "

G - heure au format 24 heures, n'ajoutez pas de zéros s'il y a moins de deux chiffres ; Par exemple : "0" à "23"

i - minutes; Par exemple : "00" à "59"

j - jours, deux chiffres, s'il y a moins de deux chiffres, aucun chiffre supplémentaire ne sera ajouté Zéro tel que : "1" à "31"

l - jour de la semaine, nom anglais complet tel que : "Vendredi"

m - mois, deux chiffres, s'il est inférieur à deux chiffres Ajoutez des zéros devant tels que : "01" ; "12"

n - mois, deux chiffres, s'il y a moins de deux chiffres, aucun zéro n'est ajouté tel que : "1" à "12"

M - mois, trois ; Lettres anglaises telles que : "Jan"

s - secondes telles que : "00" à "59"

S - ajoutez un nombre ordinal anglais à la fin du mot, deux Lettres anglaises ; telles que : "th", "nd"

t - le nombre de jours dans le mois spécifié telles que : "28" à "31"

U - le total ; nombre de secondes

w - Jour numérique de la semaine, tel que : "0" (dimanche) à "6" (samedi)

Y - Année, quatre chiffres tel que : " 1999"

y - année, deux chiffres ; tel que : "99"

z - jour de l'année ; tel que : "0" à "365"

time() Exemples d'utilisation :

time();输出结果:1332427715(返回的结果即当前的时间戳)
strtotime($time)用法举例:
echo strtotime('2012-03-22');输出结果:1332427715(此处结果为随便写的,仅作说明使用)
echo strtotime(date('Y-d-m'));输出结果:(结合date(),结果同上)(时间日期转换为时间戳)
strtotime()还有个很强大的用法,参数可加入对于数字的操作、年月日周英文字符,示例如下:
echo date('Y-m-d H:i:s',strtotime('+1 day'));输出结果:2012-03-23 23:30:33(会发现输出明天此时的时间)
echo date('Y-m-d H:i:s',strtotime('-1 day'));输出结果:2012-03-21 23:30:33(昨天此时的时间)
echo date('Y-m-d H:i:s',strtotime('+1 week'));输出结果:2012-03-29 23:30:33(下个星期此时的时间)
echo date('Y-m-d H:i:s',strtotime('next Thursday'));输出结果:2012-03-29 00:00:00(下个星期四此时的时间)
echo date('Y-m-d H:i:s',strtotime('last Thursday'));输出结果:2012-03-15 00:00:00(上个星期四此时的时间)

C'est tout pour les exemples ci-dessus. Vous pouvez étudier davantage par vous-même. La méthode strtotime() peut contrôler l'affichage des horodatages Unix via le texte anglais pour obtenir. l'heure requise. Format de date.

php obtient les millisecondes de l'heure actuelle

php lui-même ne fournit pas de fonction pour renvoyer le nombre de millisecondes, mais il fournit la méthode microtime(), qui renverra un Le tableau contient deux éléments : l'un est le nombre de secondes et l'autre est le nombre de millisecondes exprimé sous forme décimale. Nous pouvons obtenir le nombre de millisecondes renvoyé grâce à cette méthode. comme suit :

function getMillisecond(){
    list($s1,$s2)=explode(' ',microtime());
    return (float)sprintf('%.0f',(floatval($s1)+floatval($s2))*1000);

L'heure actuelle et l'heure réelle prise sont Solution au décalage horaire de 8 heures

Dans le développement réel, on rencontre souvent que l'obtenu l'heure est différente de 8 heures de l'heure réelle du système actuel. Cela est dû au problème de réglage du fuseau horaire. Pour ce problème, il existe plusieurs solutions :

1. ini et changez sa valeur en Asia/Shanghai, c'est-à-dire date.timezone = Asia/Shanghai (définissez le fuseau horaire actuel sur le fuseau horaire Asie Shanghai)

2. Ajoutez date_default_timezone_set('Asia/Shanghai'); au début du programme.

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!

Déclaration:
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