PHP 关联数组是有序的吗?

2024-02-04

我来自 python 背景,类似的 python 数据类型(字典)是无序的键值对的集合。

我想知道 PHP 关联数组是否是无序的?他们似乎是被命令的。

$test = array(
  'test' => 'test',
  'bar' => 'bar',
);

var_dump($test);    

var_dump(array_slice($test, 0, 1));

测试总是在 bar 之前进行,我可以如您所见对这个数组进行切片。那么这是否总是保证跨 php 版本有序?该顺序是否就是我声明数组的顺序?那么内部有什么东西指向“test”以将 [0] 放入数组中吗?我读过了http://php.net/manual/en/language.types.array.php http://php.net/manual/en/language.types.array.php但它并没有对这个问题给出太多的说明。我很欣赏你的回复。泰


PHP 关联数组(以及数值数组)已订购,并且 PHP 提供了各种函数来处理数组键排序,例如ksort() https://www.php.net/manual/en/function.ksort.php, uksort() https://www.php.net/manual/en/function.uksort.php, and krsort() https://www.php.net/manual/en/function.krsort.php

此外,PHP 允许您用无序的数字键声明数组:

$a = array(3 => 'three', 1 => 'one', 2 => 'two');
print_r($a);

Array
(
    [3] => three
    [1] => one
    [2] => two
)
// Sort into numeric order
ksort($a);
print_r($a);
Array
(
    [1] => one
    [2] => two
    [3] => three
)

从文档中: http://php.net/manual/en/language.types.array.php

PHP 中的数组实际上是一个有序的地图。映射是将值与键关联起来的类型。该类型针对多种不同用途进行了优化;它可以被视为数组、列表(向量)、哈希表(映射的实现)、字典、集合、堆栈、队列等等。由于数组值可以是其他数组,因此树和多维数组也是可能的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP 关联数组是有序的吗? 的相关文章

  • 如何使用 HHVM proxygen 重写规则忽略任何文件?

    我创建一个这样的文件example ini hhvm server type proxygen hhvm server default document index php hhvm virtual host default rewrite
  • 如何使用 php 处理传出 webhook (Slack)

    我已经配置了 Slack outgoing webhook 但我不确定如何处理 Slack 发送到我指定的 URL 的 HTTP POST 请求 工作流程是这样的 当有人向指定通道发送消息时 API 将向指定 URL 之一发送 HTTP P
  • 在数组/对象中查找项目的最快方法

    在 Javascript AS3 中查找列表或对象中项目的索引的最快方法是什么 我对这两种语言都提出这个要求 因为这两种语言的语法相似 假设 myArray one two three myObject one 1 two 2 three
  • Oracle/PHP - ORA-00911 更新时的无效字符

    我正在运行一个 PHP 脚本 该脚本从 Oracle 数据库实例更新表 首先 我收到一个 JSON 对象 lot KLMHA17N9N00 requestor B10078 id FRESHLOT username B26696 passw
  • Lua表在内存中是如何处理的?

    lua如何处理表的增长 是否相当于ArrayList在Java中 IE 需要连续的内存空间 并且当它变得大于已经分配的空间时 内部数组被复制到另一个内存空间 有什么聪明的方法来引导吗 我的问题是 表是如何存储在内存中的 我不是问如何在 Lu
  • 登录代码示例已通过 SQL 注入被黑客攻击,尽管 mysql_real_escape_string...

    我使用 CodeIgniter 但在黑客攻击方面遇到了麻烦 是否可以对以下登录代码进行 SQL 注入 function process login username mysql real escape string this gt inpu
  • 如何在 Laravel 中编写联合查询?

    我正在使用 laravel 5 0 并且我有 mysql 查询 SELECT surat masuk id surat surat masuk nomor surat FROM surat masuk WHERE EXISTS SELECT
  • 如何过滤掉数组的数组

    您好 我有一个包含多个值的数组 我想尝试过滤掉搜索栏的索引 英语术语的一个例子是这样的 给我名称 Name2 的索引 并通过检查每个索引的第一个值中的所有字符串来执行此操作 Code Multiple Errors var received
  • 执行数组内的函数

    是否可以从数组内部执行匿名函数 也在数组内部定义 return execute function logic 或者我应该在外面定义它然后再调用它 从技术上讲 您可以将该函数括在括号中并像这样调用它 return function retur
  • Blueimp jQuery 文件上传,传递额外的表单数据

    我可以使用一些帮助 我已经设法使 blueimp jQuery 文件上传为我工作 但我仍然绝对是一个新手 我对 jQuery 等知之甚少 所以请尝试将其清晰明了地提供给我尽可能简单 我会尝试具体一点 好的 我想实现的是人们可以上传照片 并为
  • 为什么 mysqli num_rows 总是返回 0?

    我在使用 mysqli 获取要返回的行数时遇到了问题 尽管确实有一些结果 但我每次都只是得到 0 if stmt mysqli gt prepare SELECT id title visible parent id FROM conten
  • 如何使用表单上的提交按钮传递参数

    我想创建一个可以更改 PHP 制作的 mySQL 中的产品数据的程序 我有自动递增并指定每个产品的键列 当我单击编辑产品链接时 它将传递我从每个产品获得的键值 并链接到 editPage php Key data Key a href ed
  • self.__dict__.update(**kwargs) 的风格是好是坏?

    在 Python 中 假设我有一些类 Circle 它继承自 Shape Shape 需要 x 和 y 坐标 此外 Circle 需要半径 我希望能够通过执行类似的操作来初始化 Circle c Circle x 1 y 5 r 3 Cir
  • 对数字和字母元素的数组进行排序(自然排序)

    假设我有一个数组 var arr 1 5 ahsldk 10 55 3 2 7 8 1 2 75 abc huds 我尝试对其进行排序 我得到了类似的东西 1 1 10 2 2 3 5 55 7 75 8 abc ahsldk huds 注
  • 是否可以使用 Javascript 读取 PHP 会话?

    我正在使用 cakePHP 1 26 在控制器中 我得到了一个包含以下代码行的函数 this gt Session gt write testing user this gt Session gt read testing 现在系统编写了一
  • PHP 和 ADODB 连接失败

    我的任务是迁移服务器 这包括移动我没有构建的应用程序 其中一些具有 ADODB connection 我似乎无法在新服务器上修复它 我只得到空白屏幕 我已经对 ADODB connection 与 PHP 进行了相当广泛的研究 但找不到明确
  • 何时以及为何应使用 $_REQUEST 而不是 $_GET / $_POST / $_COOKIE?

    标题中的问题 当所有 3 个都发生时会发生什么 GET foo POST foo and COOKIE foo exist 其中哪一个被包含到 REQUEST 我想说永远不会 如果我想通过各种方法设置某些内容 我会为每个方法编写代码以提醒自
  • 如何获取本地主机系统的公共IP地址[重复]

    这个问题在这里已经有答案了 我已连接到局域网 我可以访问互联网 使用浏览器 我可以使用搜索 我的 IP 是什么 找到我的公共 IP 我想使用php获取公共IP 我正在我的中运行脚本localhostwamp服务器 I tried SERVE
  • 选择MySql表数据放入数组中

    我尝试从 mysql 捕获数据并将它们全部放入数组中 认为 users table id name code 1 gorge 2132 2 flix ksd02 3 jasmen skaod2 sql mysql query select
  • PHP邮件功能有时可以工作

    我正在编写一个脚本 需要通过PHP邮件功能发送电子邮件 如下所示 它在向 gmail 帐户发送电子邮件时有效 但在我的域中的帐户却无效 我们正在运行 Exchange 服务器 截至目前 电子邮件是从 www server 发送的 有谁知道

随机推荐

  • height=100% 不起作用

    下面的代码都是height 100 在chrome中工作正常 但在firefox和ie 7中显示很奇怪 这不完全是100 高度 有人知道吗 太感谢了
  • 从 iOS 7 Beta 测试者那里获取 UDID

    我正在通过无线方式向 Beta 测试人员部署应用程序的测试版本 在 iOS 7 之前 我可以通过让他们安装 UDID Pro 之类的应用程序并将其通过电子邮件发送给我来获取他们的 UDID 如果 Beta 测试人员使用 iOS 7 我如何从
  • 在 AlloyUI Scheduler 中保存、编辑、删除和取消事件

    如何从 AlloyUI 的 Scheduler 监听 保存 编辑 删除 和 取消 事件 我需要将值保存在数据库中以供将来使用 但我没有看到任何相关文档 我当前的代码是这样的 YUI use aui scheduler function Y
  • Android 中的 Kotlin 与地图

    override fun onCreateView inflater LayoutInflater container ViewGroup savedInstanceState Bundle View var view View infla
  • SessionNotCreatedException:消息:会话未创建:此版本的 ChromeDriver 仅支持使用 Selenium ChromeDriver v81 的 Chrome 版本 81

    我从 selenium 和 os 导入了 webdriver 我希望能够成功运行这段代码 driver webdriver Chrome executable path os path abspath chromedriver 我收到的错误
  • Spacy 更新 msvc 未找到

    我尝试将 spacy 从版本 2 0 18 更新到版本 2 1 1 但每次我尝试运行命令时 pip install spacy nightly or pip install U spacy 2 1 1 我刚刚得到 error WinErro
  • Python + MongoDB - 游标迭代太慢

    我实际上正在从事一个搜索引擎项目 我们正在使用 python mongoDb 对 mongo 数据库执行 find 命令后 我有一个 pymongo 光标 pymongo 游标有大约 20k 个结果 我注意到 与对相同大小的列表的正常迭代相
  • 没有同行证书。不确定该走哪条路线

    我正在尝试使用我的应用程序访问 https 网址 我已经关注了本教程 http blog crazybob org 2010 02 01 archive html 我创建的商店具有正确的 CA 但是 当我尝试建立连接时 出现以下错误 ERR
  • 如何在C#中声明会话变量? [复制]

    这个问题在这里已经有答案了 我想创建一个新会话 在文本框中输入的任何内容都会保存在该会话中 然后在另一个 aspx 页面上 我想在标签中显示该会话 我只是不确定如何开始 以及把所有东西放在哪里 我知道我需要 protected void P
  • 如何在图(.pb)中重新训练模型?

    我已将模型保存在图表 pb 文件 中 但现在这个模型不准确 我想开发它 我有其他数据的图片需要学习 但我不知道是否可能或如何做到这一点 结果必须是新数据pb图的修改 这是一个好问题 实际上 如果有人能解释如何做到这一点 那就太好了 但除此之
  • WordPress:自动更改帖子中的特定 URL

    我找到了一个解决方案来更改我的 WordPress 主题中的链接 但不能更改内容中的链接 如何获取内容中的 URL 以便我也可以更改它们 我需要使用the content筛选 但是如何才能更改像 apple com test apple c
  • Nifi 处理器无法正确解析 JSON

    我正在使用 EvaluateJsonPath 从 JSON 中提取一个特定值 我正在使用以下 JSONPath 表达式 data containerType SOURCE path SOURCE KYLO DATALAKE id 这是我调用
  • 有没有一种方法或工具可以自动访问我网站的所有页面

    我想自动访问 抓取我网站上的所有页面以生成缓存文件 有什么方法或工具可以做到这一点吗 只需使用下载整个页面的任何机器人即可 https superuser com questions 14403 how can i download an
  • 当我使用 Xcode 7.1 模拟器时,它们不断冻结

    最近 今天和昨天 我的模拟器每次打开时都开始冻结 我将启动我的应用程序 不到一分钟 甚至更短的时间 整个模拟器就会冻结 我就会陷入死亡之轮 如果我等待 它会解冻并执行任务 但几秒钟后又会冻结 如果我重新启动计算机 它会在冻结之前工作大约 5
  • QT - 如何将小部件放置在互斥的组中?

    我想做类似以下的事情 example 但用单选按钮而不是复选框 在上图中 小部件被放置到可以启用 禁用的组中 但我希望一次只启用 1 个组 在示例中 A 组和 C 组都启用 我用上面的例子做了Q组框 http doc qt io qt 5
  • 使用 Jest 按顺序运行 Puppeteer 测试

    我正在使用 Jest Puppeteer 我有一种情况 我想先运行登录测试 为身份验证设置 cookie localStorage 然后再运行其他测试 但是 我知道 Jest 不能以这种方式工作 因为它搜索本地文件系统并根据文件名中的模式运
  • Git:为每个存储库设置不同的本地 user.name 和 user.email

    我目前正在开发 2 个项目 这些项目希望在推送到它们时使用不同的数据配置本地用户名和电子邮件 为此 我一直在更新我的配置 例如 git config local user email email protected cdn cgi l em
  • Xcode iOS 项目:运行调试构建时控制台日志开头的“fopen 失败”和“缓存无效...”是什么意思?

    我在 Xcode 12 中有一个 iOS 应用程序项目 它被设置为仅支持 iOS 12 4 及更高版本的 iPhone 应用程序 它使用 CoreData 和 PDFKit 框架 以及两个专有的 Swift 包 所有源代码都是 Swift
  • RoR 成就系统 - 多态关联和设计问题

    我正在尝试在 Ruby on Rails 中设计一个成就系统 但我的设计 代码遇到了障碍 尝试使用多态关联 class Achievement lt ActiveRecord Base belongs to achievable polym
  • PHP 关联数组是有序的吗?

    我来自 python 背景 类似的 python 数据类型 字典 是无序的键值对的集合 我想知道 PHP 关联数组是否是无序的 他们似乎是被命令的 test array test gt test bar gt bar var dump te