使用预定义的自定义键顺序数组按键对数组进行排序

2023-11-20

$a = array(0=>'a',1=>'b',2=>'c', 3=>'d');

我想将顺序更改为3,2,0,1

$a = array(3=>'d',2=>'c',0=>'a', 1=>'b');

如果您想以编程方式更改顺序,请查看各种PHP 中的数组排序函数, 尤其

  • uasort()— 使用用户定义的比较函数对数组进行排序并维护索引关联
  • uksort()— 使用用户定义的比较函数按键对数组进行排序
  • usort()— 使用用户定义的比较函数按值对数组进行排序

基于雅尼克斯的例子下面,你可以这样做:

$a = array(0 => 'a', 1 => 'b', 2 => 'c', 3 => 'd');
$b = array(3, 2, 0, 1); // rule indicating new key order
$c = array();
foreach($b as $index) {
    $c[$index] = $a[$index];
}
print_r($c);

会给

Array([3] => d [2] => c [0] => a [1] => b)

但就像我在评论中所说的那样,如果您不告诉我们订购阵列的规则或更具体地说明您的需求,我们无法帮助您超越这一点。

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

使用预定义的自定义键顺序数组按键对数组进行排序 的相关文章

  • 如何从父类函数访问子类中定义的常量?

    我从 php net 看到这个例子 但 c MY CONST 仅在 5 3
  • 从 numpy 数组中删除连续的 RGB 值

    我最初根据灰度图像的初始数组创建了一个子数组 从 numpy 数组中删除连续数字 https stackoverflow com questions 50743769 deleting consecutive numbers from a
  • 为什么我需要结束 ob_start()?

    php 文档建议我应该用 ob end flush 结束每个 ob start 我在网站的每个页面上使用一个 只是为了允许我在应用程序中的任何位置使用 firephp 日志方法 该应用程序运行良好 但我想知道是否有任何我不知道的东西可能有害
  • 对包含元组的元组进行排序[重复]

    这个问题在这里已经有答案了 我有以下元组 其中包含元组 MY TUPLE A Apple C Carrot B Banana 我想根据以下内容对这个元组进行排序second内部元组中包含的值 即 对 Apple Carrot Banana
  • preg_match_all 查询仅显示有问题的外部组

    我无法弄清楚如何只显示 preg 查询的外部组级别 我会给你一个例子 preg match all start end input matches 这个输入start1 start2 2end 1end产生这个输出start1 start2
  • 使用 SSL 证书验证 Web 浏览器

    是否可以使用 ssl 证书对 Web 浏览器进行身份验证 假设我在应用程序中存储私钥 有什么方法可以从浏览器读取密钥并尝试基于该私钥进行身份验证 您可以使用 SSL TLS 客户端证书身份验证来对浏览器 用户进行身份验证 服务器必须请求客户
  • 在 PHP 中撤销 Google 访问令牌

    正如标题所示 我想以编程方式撤销授予的访问令牌 即在 PHP 中 我发现这个他们的网站 https developers google com identity protocols OAuth2WebServer tokenrevoke 但
  • 在 Wordpress 站点中进行 AJAX 调用时出现问题

    我在使用 Wordpress 站点功能的 AJAX 部分时遇到了一些问题 该功能接受在表单上输入的邮政编码 使用 PHP 函数来查找邮政编码是否引用特定位置并返回到该位置的永久链接 我的第一个问题是关于我构建的表单 现在我的表单操作是空白的
  • 随机组合 MySQL 数据库中的两个单词

    我有一个包含名词和形容词的数据库 例如 id type word 1 noun apple 2 noun ball 3 adj clammy 4 noun keyboard 5 adj bloody ect 我想创建一个查询 它将抓取 10
  • PHP 与 MySQL 查询性能( if 、 函数 )

    我只看到这个artice http www onextrapixel com 2010 06 23 mysql has functions part 5 php vs mysql performance 我需要知道在这种情况下什么是最好的表
  • 覆盖控制器 Symfony 3.4/4.0

    我目前正在尝试覆盖 FOSUserBundle 中的控制器 在新的文档中 https symfony com doc 3 4 bundles override html https symfony com doc 3 4 bundles o
  • 如何将特定范围内的标量添加到 numpy 数组?

    有没有一种更简单 更节省内存的方法可以单独在 numpy 中执行以下操作 import numpy as np ar np array a l r ar c a a 0 l ar tolist a r 它可能看起来很原始 但它涉及获取给定数
  • 跟踪用户何时点击浏览器上的后退按钮

    是否可以检测用户何时单击浏览器的后退按钮 我有一个 Ajax 应用程序 如果我可以检测到用户何时单击后退按钮 我可以显示适当的数据 任何使用 PHP JavaScript 的解决方案都是优选的 任何语言的解决方案都可以 只需要我可以翻译成
  • SQL 最近日期

    我需要在 php 中获取诸如 2010 04 27 之类的日期作为字符串 并在表中找到最近的 5 个日期 表中的日期保存为日期类型 您可以使用DATEDIFF http dev mysql com doc refman 5 1 en dat
  • 表单计算器脚本基本价格未加载 OnLoad

    我的表单中有一个计算器来计算我的下拉选项选择 function select calculate on change calc input type checkbox calculate on click calc function cal
  • 表单提交后如何保留选择字段中的选定值?

    我有一个用于将票证上传到数据库的主页 我有一个选择字段 我想保留用户在提交表单之前选择的值 但它没有发生 这是我选择字段的代码
  • 如何在 PHP 中从 IP 地址/国家/地区名称查找时区 ID?

    谁能告诉我 PHP 中是否有任何方法可以从 IP 地址或国家 地区名称获取时区区域 例如 亚洲 加尔各答 描述 我正在尝试根据他 她的国家 地区设置用户时区 我从他的 IP 地址获取用户所在国家 地区 但我需要该国家 地区的时区区域 例如
  • 一次播种多行 laravel 5

    我目前正在尝试为我的用户表播种 如果我像这样尝试 2 行 就会失败 如果我只使用单个数组而不是 users 数组内的 2 个数组来创建一些假数据 那么效果很好 我做错了什么 正确的方法是什么 class UserTableSeeder ex
  • 为什么 Composer 降级了我的包?

    php composer phar update这样做了 删除了 2 3 0 软件包并安装了整个 2 2 5 Zend Framework php composer phar update Loading composer reposito
  • post php mysql 的拆分关键字

    我有一个表存储帖子 ID 它的标签如下 Post id Tags 1 keyword1 keyword2 keyword3 我想循环遍历该表中的每一行并执行以下操作 将关键字1 关键字2 关键字3放入新表中 word id word val

随机推荐

  • 转换在编译器/机器级别有什么作用?

    我经常想知道转换在编译器或机器级别到底做了什么 它对内存中的0和1有什么作用 谁能指点我一些好的文献 在引用类型之间进行转换时 转换不会修改各个位 它只是指示编译器 运行时在可能的情况下以特定方式解释这些位 如果由于类型不兼容而无法在编译时
  • 您的 Mac 运行的 OS X 版本低于项目的最低部署目标

    我创建了一个可可框架和测试应用程序来检查框架功能 我使用了 10 9 2 osx 版本 它在 10 9 2 上运行良好 当我在 osx 版本 10 8 5 上运行此程序时 出现以下错误 您的 Mac 运行的 OS X 版本低于项目的最低部署
  • 参考类的并行计算

    我有一个相当大的对象列表 我想并行应用一个复杂的函数 但我当前的方法使用了太多内存 我认为参考类可能会有所帮助 但是使用mcapply修改它们似乎不起作用 该函数修改对象本身 因此我用新对象覆盖原始对象 由于该对象是一个列表 而我只修改了其
  • 如何在 SQL Server 2012 中使用 CROSS APPLY 取消透视列

    我想使用 CROSS APPLY 来 UNPIVOT 多个列 列CGL CPL EO应成为覆盖类型 其值CGL CPL EO应该进入列Premium 以及值CGLTria CPLTria EOTria应该进入列Tria Premium de
  • EntityFramework 6 RC1 包含多对多属性失败

    我在代理和代理组之间有多对多关系 伪代码 缩写 public class Agent public virtual List
  • 在 android studio 中不显示 styles.xml

    我在 Windows 中的 Android Studio 中创建了一个应用程序 现在我的资源文件有问题 style xml 它不显示 不存在 检查附图 XML 文件的图像我怎样才能显示它 Thanks android studio 提供的新
  • 如何为 PHP 生成的图像设置默认的“图像另存为”名称?

    我的网站中有一个页面 显示我的 PHP 生成的一些图像 当我右键单击图像并单击 将图像另存为 时 我得到用于生成图像的 php 文件的名称作为默认名称 例如 这是图像的 html img src picture generator php
  • 箭头和 Tab 键在 sbt 1.0.3 控制台中不起作用

    跑步时sbt控制台在 Scala 2 12 4 sbt 1 0 3 MacOS 10 13 1 中 箭头键输出类似 A 的代码 而不是检索最后一个命令 制表符输出制表符而不是自动竞争 如果我直接运行 Scala REPL 或运行sbt然后从
  • 如何在 Shiny 中显示没有工具栏的绘图?

    这个问题是一个延伸this问题 我正在 Shiny 中绘制一个相当大的 ggplot Using renderPlot width 1500 height 1000 我能够展示整个情节 但是 我现在右侧有一个滚动条 我想扩展 FluidRo
  • 在 Python 3 中打印不带 b' 前缀的字节

    我如何打印bytes字符串不带b Python 3 中的前缀 gt gt gt print b hello b hello Use decode gt gt gt print b hello decode hello
  • 如何在同一手机上打开 WhatsApp Business 应用程序中的 wa.me 链接而不是个人 WhatsApp?

    我们在 Angular 8 中有一个 Web 应用程序 我们有以下代码来显示一个按钮 用户可以单击该按钮通过 WhatsApp 向联系人发送预定义的消息 a target blank href https wa me internation
  • 在 CakePHP 3 中加载来自供应商的 javascript 文件

    我的问题是如何从 CakePHP 3 0 中的供应商文件夹加载 js 文件 我已经通过 Composer 包含了 twitter bootstrap js 文件位于 vendor twbs bootstrap sass assets jav
  • 无法写入二进制文件

    我有以下 C 代码 int arr 1 2 3 4 5 6 7 8 9 10 ofstream output Sample txt ios out ios binary for int i 0 i lt 10 i output lt
  • 找不到强大的模块 - Node.js

    我开始使用 node j 进行开发 我遇到了有关使用 formidable 模块的问题 我有这个错误 错误 找不到模块 强大 以下是使用 npm lsinstalled 安装的模块列表 email protected email prote
  • 从命令行进行 MySQL 备份和恢复

    我正在使用命令行来备份和恢复 MYSQL 数据库 让我们使用我有一个数据库 Data1 其中包含视图和过程 当在Cmd line I use mysqldump i e gt bin gt mysqldump u root proot Da
  • CSS“content”属性中的 HTML 特殊字符

    我正在尝试使用 CSS before content 字段在项目之前添加内容 我想插入一个复选标记 但如果我在内容选项中使用它 它会打印为文字 我如何告诉 CSS 使其成为复选标记 而不是文字字符串 尝试这个 target before c
  • 如果用户 = 系统,.NET 用户设置存储在哪里?

    我一直在使用更新来更新我的一个应用程序并使用Properties Settings Default Upgrade 并发现我的更新程序重新启动我的应用程序后 它在系统用户而不是默认 登录用户下运行 这让我想知道 SYSTEM 的 user
  • 如何在 Perl 中使用变量作为正则表达式修饰符?

    我正在编写一个抽象函数 它将询问用户一个给定的问题并根据给定的正则表达式验证答案 重复该问题 直到答案与验证正则表达式匹配 但是 我还希望客户端能够指定答案是否必须区分大小写 所以像这样 sub ask my prompt validati
  • 如何检查 CachedRowSet 中是否存在列名?

    我正在从可能发生变化的视图中查询数据 在执行操作之前我需要知道该列是否存在crs get 我发现我可以查询metadata像这样在我请求数据之前查看一列是否存在 ResultSetMetaData meta crs getMetaData
  • 使用预定义的自定义键顺序数组按键对数组进行排序

    a array 0 gt a 1 gt b 2 gt c 3 gt d 我想将顺序更改为3 2 0 1 a array 3 gt d 2 gt c 0 gt a 1 gt b 如果您想以编程方式更改顺序 请查看各种PHP 中的数组排序函数