3 回答

TA貢獻2065條經驗 獲得超14個贊
保留大部分代碼。工作示例:
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 關注
- 165 瀏覽
添加回答
舉報