J'aimerais savoir comment vérifier si l'horodatage est aujourd'hui, demain ou le lendemain de demain.
J'ai par exemple. : P>
if today then echo $output = "today"; if tomorrow then echo $output = "tomorrow"; if the day after tomorrow then echo $output = "dayaftertomorrow";
4 Réponses :
<?php
$time = "20060713174545";
$date = date('Y-m-d', strtotime($time));
$now = date('Y-m-d');
$tomorrow = date('Y-m-d', time() + strtotime('tomorrow'));
$day_after_tomorrow = date('Y-m-d', time() + strtotime('tomorrow + 1 day'));
if ($date == $now){
echo "It's today";
}
elseif($date == $tomorrow){
echo "It's tomorrow";
}
elseif($date == $day_after_tomorrow){
echo "It's day after tomorrow";
}
else{
echo "None of previous if statements passed";
}
Ajout de 24 heures à l'heure actuelle ne correspond pas nécessairement à demain. Dans de nombreux pays, il y a un jour par an qui a 23 heures.
Vous l'avez rendu encore plus faux. Time () + Strtotime ('+ 2 jours') serait l'horodatage 2011-08-10 + 2011-08-13 horodatage de 41 ans à l'avenir.
$timestamp = "1313000474";
$date = date('Y-m-d', $timestamp);
$today = date('Y-m-d');
$tomorrow = date('Y-m-d', strtotime('tomorrow'));
$day_after_tomorrow = date('Y-m-d', strtotime('tomorrow + 1 day'));
if ($date == $today) {
echo "today";
} else if ($date == $tomorrow) {
echo "tomorrow";
} else if ($date == $day_after_tomorrow) {
echo "dayaftertomorrow";
}
que diable? On dirait que je suis copié?
Vraiment mec? Nous ne faisons aucune chose la même chose, et je n'ai aucune raison de copier votre code, qui est à la fois logiquement incorrect et ne produit pas la sortie souhaitée.
Gardez votre code propre ... Edit: Avec cela, vous n'avez pas à vous inquiéter si l'horodatage est déjà sans heures, minutes et secondes ... ou créez des dates de sortie différentes, Remplacement de écho $ $ compare_date_desc; code> par date d'écho ($ compare_date_desc, $ horodatage); code> p> p> p> p> P> P>
<?php
function getTheDay($date)
{
$curr_date=strtotime(date("Y-m-d H:i:s"));
$the_date=strtotime($date);
$diff=floor(($curr_date-$the_date)/(60*60*24));
switch($diff)
{
case 0:
return "Today";
break;
case 1:
return "Yesterday";
break;
default:
return $diff." Days ago";
}
}
?>
Ce n'est pas un horodatage UNIX. Qu'est-ce que c'est? Est 2006/07/13 la partie de date? Qu'est-ce que 174545? Temps militaire?
Ressemble à
yyyymmddhhmms code> à moi. C'est-à-dire 174545 = 17h45:45.désolé je l'ai corrigé maintenant