制作关联数组

时间:2014-12-29 17:22:18

标签: php arrays string integer associative-array

我的目标是从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成功的输出,当我调试它时,我得到了结果:

["6",7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23]

首选结果是

["6","7","8","9","10"]... etc

3 个答案:

答案 0 :(得分:5)

两个结果之间的唯一区别是一个结果集包含整数而另一个包含字符串。如果您希望这些值是字符串,只需在将它们分配给数组时进行转换:

for ($i = $from_time; $i <= $to_time; $i++) {
    $working_time_array[] = (string) $i;
}

除非您的客户方只期待字符串,否则这不应该是必要的。

答案 1 :(得分:0)

在将字符串推送到数组之前,您需要将$ i强制转换为字符串。

for ($i = $from_time; $i <= $to_time; $i++) {
        $working_time_array[] = (string)$i;
}

答案 2 :(得分:0)

为什么要将int转换为字符串?

为了你的目标,这应该有效

for ($i = $from_time; $i <= $to_time; $i++) {
    $working_time_array[] = "$i";
}
echo json_encode($working_time_array);