Maison >développement back-end >Problème PHP >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!