3 回答
TA贡献2065条经验 获得超13个赞
保留大部分代码。工作示例:
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);
}
测试链接:点击。
TA贡献1805条经验 获得超10个赞
您可以使用组合array_map
将日期用引号引起来,并implode
在它们之间添加逗号:
echo implode(',', array_map(fn($date) => "'{$date}'", $arraydias));
如果您需要用实际的双引号括起来:
echo '"', implode(',', array_map(fn($date) => "'{$date}'", $arraydias)), '"';
这意味着您最初通常较早地将日期添加到数组中:
$arraydias[] = $fecha;
(而不是$arraydias [] = array($fecha);
像你那样)
TA贡献1829条经验 获得超9个赞
我认为这应该足够了:
// 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);
- 3 回答
- 0 关注
- 118 浏览
添加回答
举报