从数据库存储DateTime的数组

我正在尝试将来自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” ...

wb1317 回答:从数据库存储DateTime的数组

尝试像这样更改此行:

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

首先,您需要初始化$ 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',$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',';    

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

输出

  

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

本文链接:https://www.f2er.com/3166726.html

大家都在问