首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从Python背景了解PHP数组

从Python背景了解PHP数组
EN

Stack Overflow用户
提问于 2013-02-27 15:38:49
回答 1查看 95关注 0票数 0

我通常用Python、Java或C编写代码。我正在用PHP编写一个项目,我正在阅读PHP中的数组,我对此感到非常困惑。如果我的理解是正确的,PHP中的数字索引不一定与位置相对应,只是键,就像Python中的dict中的键。因此,当您洗牌PHP数组时,元素的顺序将发生变化,但它们的键将保持不变。因此,在调用array[9]时,如果洗牌以这种方式排列元素,则可能会得到数组的第一个元素。这引起了许多问题:

  • 那么,PHP数组总是只是某种有序的哈希表吗?这对开销意味着什么?在Python中,lists的功能类似于一个典型的数组数据结构,而字典则更像哈希结构。PHP似乎通过为每个值分配唯一的键并跟踪这些值的顺序来将两者结合起来。如果我想使用关联数组结构进行恒定时间查找,那么由于这种排序开销,我的处境是否比使用Python字典的情况糟糕得多呢?是否有仅为数组或哈希表的PHP数据结构?
  • 从编号的PHP数组中移除值时会发生什么情况?如果我有一个数组,[1, 2, 3, 4, 5],我从数组中删除4,然后尝试访问array[3],这会不会给我一个错误,因为我 用3键移除元素?还是PHP做某种密钥? 在这种情况下调整?
  • 如果更改数组的顺序(例如,通过排序或 ),是使索引与 使用array_values()将数组复制到新数组的位置。
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15116098

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档