我有这个普通的数组名称 $arr.. 并尝试使用 array_push() 函数将某些内容推送到数组上.. 就像array_push( $arr['alerts_data'], 999 );
它产生以下输出:
Array
(
[alerts_data] => Array
(
[0] => 169
[1] => 175
[2] => 111
[3] => 48
[4] => 999
)
)
Run Code Online (Sandbox Code Playgroud)
当我使用 json_encode 时,我得到:
{"alerts_data":[169,175,111,48,111,999]}
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试 unset() $arr 中的某些内容时,例如:
unset( $arr['alerts_data'][4] );// will remove removes the 999
Run Code Online (Sandbox Code Playgroud)
然后再次使用json_encode,我得到了这个json对象
{"alerts_data":{"0":169,"1":175,"2":111,"3":48}}
Run Code Online (Sandbox Code Playgroud)
这里出了什么问题?你能告诉?我想通过使用 unset() 函数来实现上面的第一个编码的 json。
是的,这是因为数组键不再连续,所以它被视为关联数组,而 PHP 关联数组变成了 JavaScript 对象,因为 JavaScript 没有关联数组。
用于array_splice()从数组中干净地删除元素。
| 归档时间: |
|
| 查看次数: |
81 次 |
| 最近记录: |