Maison >développement back-end >tutoriel php >Comment puis-je vérifier si une date se situe dans une plage donnée ?

Comment puis-je vérifier si une date se situe dans une plage donnée ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-01 09:20:13618parcourir

How Can I Check if a Date Is Within a Given Range?

Déterminer si une date se situe dans une plage spécifiée

Étant donné une date de début et de fin, comment pouvez-vous vérifier si une date spécifiée par l'utilisateur se trouve à l'intérieur de cela plage ?

Exemple :

$start_date = '2009-06-17';
$end_date = '2009-09-05';
$date_from_user = '2009-08-28';

Conversion en horodatages

Pour faciliter cette validation, il est avantageux de convertir la dates pour horodater les entiers en utilisant strtotime fonction.

Implémentation :

check_in_range($start_date, $end_date, $date_from_user);

function check_in_range($start_date, $end_date, $date_from_user)
{
  // Convert to timestamps
  $start_ts = strtotime($start_date);
  $end_ts = strtotime($end_date);
  $user_ts = strtotime($date_from_user);

  // Check if user date falls between start and end
  return (($user_ts >= $start_ts) && ($user_ts <= $end_ts));
}

Explication :

Cet extrait de code convertit les dates données en horodatages. La fonction check_in_range compare ensuite la date spécifiée par l'utilisateur avec les horodatages de début et de fin. Si la date de l'utilisateur est supérieure ou égale à l'horodatage de début et inférieure ou égale à l'horodatage de fin, la fonction renvoie true, indiquant que la date se situe dans la plage. Sinon, il renvoie false.

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