我的目标是从 for 循环的值制作 ant assoc 数组。
//$from_time value is 6 and $to_time value is 23
for ($i = $from_time; $i <= $to_time; $i++) {
$working_time_array[] = $i;
}
echo json_encode($working_time_array);
我在 AJAX 成功时得到的输出,当我控制台时.log它,我得到的结果如下:
["6",7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23]
首选结果是
["6","7","8","9","10"]... etc
这两个结果之间的唯一区别是一个结果集包含整数,另一个结果集包含字符串。如果您希望这些值是字符串,只需在将它们分配给数组时强制转换它们:
for ($i = $from_time; $i <= $to_time; $i++) {
$working_time_array[] = (string) $i;
}
除非您的客户端只期望字符串,否则这真的不是必需的。
您需要
先将$i转换为字符串,然后再将其推送到数组。
for ($i = $from_time; $i <= $to_time; $i++) {
$working_time_array[] = (string)$i;
}
为什么要将 int 转换为字符串?
对于您的目标,这应该有效
for ($i = $from_time; $i <= $to_time; $i++) {
$working_time_array[] = "$i";
}
echo json_encode($working_time_array);