php - 从 php while 循环生成数组

标签 php arrays loops while-loop

我想运行一个 while(或任何)循环来输出一个小的日期列表作为一个数组

$start = $day = strtotime("-1 day");
$end = strtotime('+6 day');
while($day < $end)
{
    echo  date('d-M-Y', $day) .'<br />';
    $day = strtotime("+1 day", $day) ;
}

这适用于打印,但我想将其保存为数组(并将其插入 mysql 数据库)。 是的!我不知道我在做什么。

最佳答案

要创建一个数组,您需要首先在循环外初始化它(因为变量作用域)

$start = $day = strtotime("-1 day");
$end = strtotime('+6 day');
$dates = array(); //added
while($day < $end)
{
    $dates[] = date('d-M-Y', $day); // modified
    $day = strtotime("+1 day", $day) ;
}
echo "<pre>";
var_dump($dates);
echo "</pre>";

然后您可以使用 foreachwhile 来使用您的日期

foreach 方法:

foreach($dates as $date){
     echo $date."<br>";
}

同时接近:

$max =  count($dates);
$i = 0;
while($i < $max){
    echo $dates[$i]."<br>";
}

关于php - 从 php while 循环生成数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9105419/

相关文章:

php - 如何创建一个可以转换为 boolean 值的 php 类(真值或假值)

java - 双数组mongodb 3

c - 二维数组错误

java - 如何使用循环通过用户输入获取部分数组元素

php - 如何使用 PHP 从 mySQL 中的表中选择某些字段

php登录系统显示空白页

PHP 登录脚本在特定计算机上的 IE 中不起作用

c - 返回一个 C 数组并在 main.c 中读取它

MySQL 在 select 语句中生成带有循环的列

javascript - 与函数、循环和数组相关的令人困惑的执行