如何在php中打印数组

我想以特定的方式在 php 中打印我的数组,我希望你能帮助我,非常感谢你。


public function getLineChartPromedio($format = 'Y-m-d'){

    $startDate = $this->input->post('startDate');

    $endDate = $this->input->post('endDate');

    // Declare an empty array 

    $arraydias = array(); 

    

    // Variable that store the date interval 

    // of period 1 day 

    $interval = new DateInterval('P1D'); 


    $realEnd = new DateTime($endDate); 

    $realEnd->add($interval); 


    $period = new DatePeriod(new DateTime($startDate), $interval, $realEnd); 

    $count = 0;

    // Use loop to store date into array 

    foreach($period as $date) {                  

        $fecha = $date->format($format);

        $arraydias [] = array ($fecha);

    } 

    

    $string = "";

    $week_array = "";

    $size = 0;

    foreach ($arraydias as $Array) {

        $string .= implode("','", $Array);

        $week_array = "'".$string."'";

    }

    echo json_encode($week_array);

    

}

该方法的结果为:“'2020-07-082020-07-092020-07-102020-07-112020-07-12'”


我想要实现的是:“'2020-07-08','2020-07-09','2020-07-10','2020-07-11','2020-07-12'”


我究竟做错了什么?我希望你可以帮助我


当年话下
浏览 90回答 3
3回答

翻翻过去那场雪

保留大部分代码。工作示例:function getLineChartPromedio($format = 'Y-m-d'){    $startDate = $this->input->post('startDate');    $endDate = $this->input->post('endDate');    // Declare an empty array     $arraydias = array();         // Variable that store the date interval     // of period 1 day     $interval = new DateInterval('P1D');     $realEnd = new DateTime($endDate);     $realEnd->add($interval);     $period = new DatePeriod(new DateTime($startDate), $interval, $realEnd);     // Use loop to store date into array     foreach($period as $date) {                          $fecha = $date->format($format);        $arraydias[] = $fecha;    }         $string = "'" . implode("','", $arraydias) . "'";    echo json_encode($string);}测试链接:点击。

holdtom

您可以使用组合array_map将日期用引号引起来,并implode在它们之间添加逗号:echo implode(',', array_map(fn($date) => "'{$date}'", $arraydias));如果您需要用实际的双引号括起来:echo '"', implode(',', array_map(fn($date) => "'{$date}'", $arraydias)), '"';这意味着您最初通常较早地将日期添加到数组中:$arraydias[] = $fecha;(而不是$arraydias [] = array($fecha);像你那样)

PIPIONE

我认为这应该足够了:// Use loop to store date into array foreach($period as $date) {                      $fecha = $date->format($format);    // Note - no `array` usage here    $arraydias [] = $fecha;} echo json_encode($array_dias);
打开App,查看更多内容
随时随地看视频慕课网APP