【发布时间】:2011-11-26 00:30:04
【问题描述】:
我前段时间编写了一些大型 PHP 函数。它们包含一些关联数组。到目前为止,我对这些数组没有任何问题,因为它们包含 string 和 int 类型的键(如“brown”和 118)。问题是,当键都是 int 时,它们不会被保留,而是被转换为 0、1 等。
有没有办法强制一个数组保留我给它的键,即使它们都是 int?函数很大,改起来也太费时间了。
编辑
按照 Mike B 的直觉,我使用了一个排序函数,它似乎可以重新索引数组。我使用的是在这里找到的函数:Sort an Array by keys based on another Array?
这是第一个,Erin 的那个,但它没有保留正确的索引。我试用了 Boombastic 编辑的版本,效果很好。
感谢您的所有回答!
【问题讨论】:
-
我不确定我是否理解。
array(5 => 'foo')创建一个具有整数键 5 和值 foo 的数组。它不会强制从 0 开始。您是否在进行任何排序?这可能会导致 PHP 重新索引键。看代码会有帮助。
标签: php arrays key int associative