Maison >développement back-end >Problème PHP >conversion du type de données de date php

conversion du type de données de date php

王林
王林original
2023-05-07 11:11:11953parcourir

Dans le développement d'applications Web, la conversion du type de données de date est souvent impliquée. PHP fournit une multitude de fonctions de date et d'heure, qui peuvent facilement effectuer le formatage de date, la comparaison, le calcul et d'autres opérations. Cet article présentera les types de données de date en PHP et leurs méthodes de conversion.

Type de données de date PHP

En PHP, les dates peuvent être représentées sous forme de chaînes ou d'entiers. Les formats de date couramment utilisés incluent :

  • A-m-d H:i:s : année-mois-jour heure : minute : seconde, tel que 2022-01-01 00:00:00
  • A/m/d H:i : s : année/mois/jour heure : minute : seconde, tel que 2022/01/01 00:00:00
  • Y année m mois d jour H heure i minute s seconde : année mois jour heure minute seconde, tel que janvier 01, 2022 Jour 00 heures 00 minutes 00 secondes
  • Horodatage Unix : le nombre de secondes écoulées depuis le 1er janvier 1970, tel que 1640995200

Type de chaîne à date

En utilisant la fonction intégrée PHP strtotime(), vous peut convertir la date et convertir une chaîne d'heure en un horodatage Unix. Cette fonction accepte une chaîne représentant une date et une heure comme paramètres et renvoie l'horodatage Unix correspondant à la date.

$time_str = '2022-01-01';
$time_stamp = strtotime($time_str);
echo $time_stamp; // 输出:1640995200

Le code ci-dessus convertit la chaîne de date « 01/01/2022 » en un horodatage Unix et génère l'horodatage.

Remarque : Lorsque vous utilisez la fonction strtotime() pour convertir une chaîne de date en horodatage, le format de date doit être le format de date anglais "Mois Jour Année" ou "Jour Mois Année" ou le format de date "Y-m-d ".

Horodatage Unix au format de date

L'horodatage Unix peut être formaté dans le format de date spécifié via la fonction intégrée PHP date(). Cette fonction accepte deux paramètres : le premier paramètre est une chaîne représentant le format de date et le deuxième paramètre est un horodatage Unix.

$time_stamp = 1640995200;
$date_str = date('Y-m-d H:i:s', $time_stamp);
echo $date_str; // 输出:2022-01-01 00:00:00

Le code ci-dessus formate l'horodatage Unix 1640995200 en une chaîne de date au format 'Y-m-d H:i:s' et génère la chaîne.

Comparaison directe de chaînes

En PHP, vous pouvez utiliser directement des opérateurs de comparaison de chaînes (>, <, ==, !=, etc.) pour comparer la taille des chaînes de date. Si vous convertissez une chaîne de date en horodatage Unix, vous pouvez également comparer directement à l'aide d'opérateurs de comparaison numérique (>, <, =, !=, etc.).

$date_str1 = '2022-01-01';
$date_str2 = '2022-01-02';
if ($date_str1 < $date_str2) {
    echo '日期 ' . $date_str1 . '在 ' . $date_str2 . '之前';
} else {
    echo '日期 ' . $date_str1 . '在 ' . $date_str2 . '之后';
}

Le code ci-dessus compare les tailles de deux chaînes de date et génère le résultat final de la comparaison.

Date en horodatage

Vous pouvez utiliser la fonction intégrée PHP mktime() pour convertir les dates en horodatages Unix. Cette fonction accepte plusieurs paramètres, à savoir les heures, les minutes, les secondes, les mois, les jours et les années. Si aucun argument n'est spécifié, la fonction renvoie l'horodatage Unix de l'heure actuelle.

$year = 2022;
$month = 1;
$day = 1;
$hour = 0;
$minute = 0;
$second = 0;
$time_stamp = mktime($hour, $minute, $second, $month, $day, $year);
echo $time_stamp; // 输出:1640995200

Le code ci-dessus convertit la date « 2022-01-01 » en un horodatage Unix et génère l'horodatage.

Convertir l'horodatage en date

Semblable à la fonction date() présentée ci-dessus, la fonction intégrée PHP strftime() peut également formater les horodatages Unix dans le format de date spécifié. Cette fonction accepte deux paramètres : le premier paramètre est une chaîne représentant le format de date (prend en charge les caractères de formatage, tels que %Y, %m, %d, %H, %M, %S, etc.), et le deuxième paramètre est Horodatage Unix.

$time_stamp = 1640995200;
$date_str = strftime('%Y年%m月%d日 %H时%M分%S秒', $time_stamp);
echo $date_str; // 输出:2022年01月01日 00时00分00秒

Le code ci-dessus formate l'horodatage Unix 1640995200 dans le format de date spécifié et génère la chaîne formatée.

Conclusion

En PHP, lorsqu'il s'agit d'opérations de conversion de type de date, les développeurs peuvent utiliser les fonctions intégrées strtotime(), date(), mktime(), strftime() et d'autres fonctions pour effectuer des opérations facilement. Dans le développement réel, il est nécessaire de sélectionner les fonctions appropriées en fonction de besoins spécifiques et de les utiliser de manière flexible.

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