Comment augmenter le nombre de jours dans $Date en PHP
P粉741678385
P粉741678385 2023-08-20 15:57:20
0
2
563
<p>J'ai une date renvoyée dans le cadre d'une requête MySQL au format <code>2010-09-17</code>. </p> <p>Je souhaite définir les variables $Date2 à $Date5 comme suit : </p> <p><code>$Date2 = $Date + 1</code></p> <p><code>$Date3 = $Date + 2</code></p> <p>Attendez, cela renvoie <code>2010-09-18</code>, <code>2010-09-19</code>, et ainsi de suite. </p> <p>J'ai essayé</p> <pre class="brush:php;toolbar:false;">date('Y-m-d', strtotime($Date. ' + 1 day'))</pre> <p>Mais cela me renvoie la date <em>avant </em><code>$Date</code>. </p> <p>Existe-t-il un moyen correct d'obtenir mes dates au format « A-m-d » afin qu'elles puissent être utilisées dans une autre requête ? </p>
P粉741678385
P粉741678385

répondre à tous(2)
P粉393030917

Si vous utilisez PHP 5.3, vous pouvez utiliser la méthode DateTime对象及其add :

$Date1 = '2010-09-17';
$date = new DateTime($Date1);
$date->add(new DateInterval('P1D')); // P1D表示1天的时间段
$Date2 = $date->format('Y-m-d');

Consultez la page de manuel du constructeur DateInterval DateInterval构造函数手册页面,了解如何构造其他时间段以添加到您的日期(例如2天为'P2D',3天为'P3D' pour savoir comment construire d'autres périodes de temps à ajouter à votre date (par exemple, 2 jours pour 'P2D', 3 jours pour 'P3D', etc.).

Si vous n'avez pas PHP 5.3, vous devriez pouvoir l'utiliser comme avant strtotime (je l'ai testé et il fonctionne aussi bien en 5.1.6 qu'en 5.2.10) :

$Date1 = '2010-09-17';
$Date2 = date('Y-m-d', strtotime($Date1 . " + 1 day"));
// var_dump($Date2)返回"2010-09-18"
P粉258788831

Il vous suffit d'utiliser days而不是day comme ceci :

<?php
$Date = "2010-09-17";
echo date('Y-m-d', strtotime($Date. ' + 1 days'));
echo date('Y-m-d', strtotime($Date. ' + 2 days'));
?>

Il affichera correctement :

2010-09-18
2010-09-19
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal