Php 从数据库存储日期时间的数组

Php 从数据库存储日期时间的数组,php,mysqli,Php,Mysqli,我正在尝试将来自PhpMyAdmin的DateTime的日期存储到代码中的数组中。由于某些原因,它仅将最后一个日期应用于我的数组中的位置[0]。请帮忙 这就是我所尝试的: $id = $_SESSION['userId']; $dBname = "infosensor"; $conn = mysqli_connect($servername, $dBUsername, $dBPassword, $dBname); $sql = "SELECT dias F

我正在尝试将来自PhpMyAdmin的DateTime的日期存储到代码中的数组中。由于某些原因,它仅将最后一个日期应用于我的数组中的位置[0]。请帮忙

这就是我所尝试的:

$id = $_SESSION['userId']; 
      $dBname = "infosensor";
      $conn = mysqli_connect($servername, $dBUsername, $dBPassword, $dBname);

      $sql = "SELECT dias FROM `$id`;";
      $result = mysqli_query($conn, $sql);
      $resultCheck = mysqli_num_rows($result);

      if ($resultCheck > 0)
      {
        while ($row = mysqli_fetch_assoc($result))
        {

          $horario = $horario .'"'.(date('H:i:s', strtotime(str_replace('.', '-', $row['dias'])))). '",';    

          $arr = array($horario);
        }
      }


      echo $arr[0];
我从我尝试的代码中得到的结果是:

"16:29:47","16:30:07","16:33:55","16:34:25",... 
位置[0]


我需要在进入数组时->arr[0]=“16:29:47”当我想要位置1时,我只需使用arr[1]=“16:30:07”…

尝试如下更改此行:

$horario = (date('H:i:s', strtotime(str_replace('.', '-', $row['dias']))));    

首先,您需要初始化$arr=[] 然后你可以通过爆炸来实现这一点

$id = $_SESSION['userId']; 
$dBname = "infosensor";
$conn = mysqli_connect($servername, $dBUsername, $dBPassword, $dBname);

$sql = "SELECT dias FROM `$id`;";
$result = mysqli_query($conn, $sql);
$resultCheck = mysqli_num_rows($result);

$arr = [];
if ($resultCheck > 0)
{
    while ($row = mysqli_fetch_assoc($result))
    {

        $horario = $horario .'"'.(date('H:i:s', strtotime(str_replace('.', '-', $row['dias'])))). '",';
    }

    if(!empty($horario)){
        $arr = explode(',', $horario);
    }
}
print_r($arr);
输出

像这样

arr[0]=“16:29:47”,arr[1]=“16:30:07”


你为每个用户都有一个单独的表吗?你一直在覆盖
$arr
@mickmackusa我怎么能不覆盖它呢?我得到的答案是“数组”:(我几乎可以工作了,我不想打印整个数组,只想打印我键入的位置
echo$arr[0];
现在输出什么?我得到这个Ola数组([0]=>“16:29:47”[1],但当我只需要获得位置1时,它会打印位置0,当我打印位置1时,我不需要位置0。更改此
$horario=$horario.'”。(date('H:I:s',str…
$horario=(date('H:I:s',str这起作用了,但我如何访问数组?类似于$arr[0]?为什么echo不工作?在这里,您可以直接访问$arr;以尝试echo$arr[0];//输出:16:29:47答案现在更新@Matheusys,但我只想获取arr[1]例如,为什么它会显示另一个呢?因为你打印了整个数组,这就是为什么。DV请说明原因?但我只想要我键入的位置,我怎么能得到它?我不明白你从数组中得到了什么,如果你只想要
$arr[0]
而不想使用它,问题是什么?
$id = $_SESSION['userId']; 
$dBname = "infosensor";
$conn = mysqli_connect($servername, $dBUsername, $dBPassword, $dBname);

$sql = "SELECT dias FROM `$id`;";
$result = mysqli_query($conn, $sql);
$resultCheck = mysqli_num_rows($result);

$arr = [];
if ($resultCheck > 0)
{
    while ($row = mysqli_fetch_assoc($result))
    {

        $horario = $horario .'"'.(date('H:i:s', strtotime(str_replace('.', '-', $row['dias'])))). '",';
    }

    if(!empty($horario)){
        $arr = explode(',', $horario);
    }
}
print_r($arr);
$arr = []; // define array here
while ($row = mysqli_fetch_assoc($result))
{

      $horario = $horario .'"'.(date('H:i:s', strtotime(str_replace('.', '-', $row['dias'])))). '",';    

      $arr[] = $horario; // add [] here and remove array()
}
//    print_r($arr);
echo $arr[0];