php - 如何合并每个数组具有不同元素数的二维数组

2023-12-02

我有 2 组二维数组,我想合并成 1 个二维数组。但每个数组中的元素数量不相同,并且前 2 个元素相同,我不想重复它。 这是它。

第一个二维数组:

Array(   
       [0] => Array
           (
              [0] => 25/2/2013
              [1] => 8.45 a.m
              [2] => 9.98
           )

       [1] => Array
           (
              [0] => 25/2/2013
              [1] => 8.46 a.m
              [2] => 9.02
           )
     )

第二个二维数组:

 Array(   
        [0] => Array
            (
                [0] => 25/2/2013
                [1] => 8.45 a.m
                [2] => 1.23
                [3] => 6.1
            )

        [1] => Array
            (
                [0] => 25/2/2013
                [1] => 8.46 a.m
                [2] => 1.75
                [3] => 1.75
            )
      )

我如何得到这样的结果:

Array(   
        [0] => Array
            (
                [0] => 25/2/2013
                [1] => 8.45 a.m
                [2] => 9.98
                [3] => 1.23
                [4] => 6.1
            )

        [1] => Array
            (
                [0] => 25/2/2013
                [1] => 8.46 a.m
                [2] => 9.02
                [3] => 1.75
                [4] => 1.75
            )
     )

这是第一个数组的 var 导出:

( 0 => array ( 0 => '5/2/2013', 1 => '9:31:00 AM', 2 => '0.395', 3 => '0.395', 4 => '302.855', 5 => '0.563', ), 1 => array ( 0 => '5/2/2013', 1 => '9:33:00 AM', 2 => '0.383', 3 => '0.383', 4 => '303.431', 5 => '0.563', )

对于第二个数组:

( 0 => array ( 0 => '5/2/2013', 1 => '9:31:00 AM', 2 => '-1.000', 3 => '-1.000', 4 => '-1.000', 5 => '-1.670', 6 => '-1.000', 7 => '-11.000', ), 1 => array ( 0 => '5/2/2013', 1 => '9:33:00 AM', 2 => '-1.000', 3 => '-1.000', 4 => '-1.000', 5 => '-1.670', 6 => '-1.000', 7 => '-11.000', )

如果两个数组的顺序相同,则代码非常简单:

$a = array(
    array('5/2/2013', '9:31:00 AM', '0.395', '0.395', '302.855', '0.563'),
    array('5/2/2013', '9:33:00 AM', '0.383', '0.383', '303.431', '0.563'),
);

$b = array(
    array('5/2/2013', '9:31:00 AM', '-1.000', '-1.000', '-1.000', '-1.670', '-1.000', '-11.000'),
    array('5/2/2013', '9:33:00 AM', '-1.000', '-1.000', '-1.000', '-1.670', '-1.000', '-11.000'),
);


$i = new MultipleIterator(MultipleIterator::MIT_NEED_ALL | MultipleIterator::MIT_KEYS_ASSOC);
$i->attachIterator(new ArrayIterator($a), 'a');
$i->attachIterator(new ArrayIterator($b), 'b');

$result = [];
foreach ($i as $v) {
    $result[] = array_merge($v['a'], array_slice($v['b'], 2));
}
print_r($result);

您基本上同时迭代两个数组,并通过将第一个元素与第二个元素合并来构造最终数组(跳过公共部分)。

Result:

Array
(
    [0] => Array
        (
            [0] => 5/2/2013
            [1] => 9:31:00 AM
            [2] => 0.395
            [3] => 0.395
            [4] => 302.855
            [5] => 0.563
            [6] => -1.000
            [7] => -1.000
            [8] => -1.000
            [9] => -1.670
            [10] => -1.000
            [11] => -11.000
        )

    [1] => Array
        (
            [0] => 5/2/2013
            [1] => 9:33:00 AM
            [2] => 0.383
            [3] => 0.383
            [4] => 303.431
            [5] => 0.563
            [6] => -1.000
            [7] => -1.000
            [8] => -1.000
            [9] => -1.670
            [10] => -1.000
            [11] => -11.000
        )
)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

php - 如何合并每个数组具有不同元素数的二维数组 的相关文章

  • .htaccess 主要用于 localhost

    我在本地主机上使用 wamp server 虚拟主机名为www xyz com我有一个通过 git 设置的部署服务 它将代码部署到服务器上www xyz in 这是我的 htaccess 代码 RewriteEngine on Rewrit
  • 将两个单独的功能分支合并到同一个主分支中[重复]

    这个问题已经存在了 我们正在努力发布 2 个远程功能分支 F2 和 F3 我们如何处理F3来创建发布 提案1 简单地合并F3进入开发 提案2 第一次合并开发进入F3 包括F2的变化 然后合并进入发展 这两种方法之间有什么实际差异 是否有客观
  • 如何在 Laravel 中正确返回 JSON 响应?

    return response gt json message gt No new orders 不幸的是 这个回应不起作用 理想情况下 我想返回一个 JSON 响应 其中包含 消息 gt 没有新订单 状态代码为 204 无内容 我在控制器
  • 在 PHP 中比较字符串的方式与 MySQL 相同

    我将 varchar 存储在 utf8 MySQL 表中并使用 utf8 general ci 排序规则 我在 varchar 上有一个唯一索引 我想在 PHP 中进行字符串比较 这相当于 MySQL 对索引所做的操作 一个具体的例子是 我
  • 将 Google 转换代码添加到 WordPress 联系表单 7

    我找到了一个将 Google Conversion 代码添加到 WordPress Contact Form 7 插件的教程 可以找到here http contactform7 com tracking form submissions
  • $_POST 返回空

    尝试练习一下 ajax 和 PHP 我不明白为什么每当我发送一些东西时 它都会返回空或未定义的索引 PHP 返回空 JS form submit function var meth this attr action var msg msg
  • Codeigniter $this->db->reconnect();用法

    I m not自动加载数据库 因为我的应用程序的大多数页面don t需要数据库处理 否则整个事情会变慢 我想要做的是 当数据库已经存在时 不要建立与数据库的新连接 而是使用它而不是打扰服务器数据库 那么我该如何实施 this gt db g
  • 改进将字符串转换为可读的 url

    以下函数重写包含各种字符的新闻和产品标题的 url 我希望创建的字符串仅包含字母数字值和 但没有结尾 或空格 也没有重复的 下面的函数工作正常 但我想知道是否有任何方法可以将其编写得更简单或更有效 function urlName stri
  • SMTP:无法连接套接字:无法找到套接字传输“ssl”

    我一直在尝试在 WAMP 上使用 Pear 发送电子邮件通过 GMail 花了几个小时将其全部设置并找出我遇到的所有错误后 我以为我已经很接近了 直到我开始收到此错误 Failed to connect to ssl smtp gmail
  • 正确显示mySQL一对多查询结果

    我有两张桌子 TRIPS tripID clientID and LEGS legID depart arrive tripID TRIPS 与 LEGS 具有一对多关系 因为有多个legID s per tripID 我需要以以下格式显示
  • 通过php变量的值设置输入字段的值

    我有一个简单的 php 计算器 代码是 h1 align center This is PHP Calculator h1
  • 正则表达式 - 剥离非数字并删除分(如果有)

    我目前正在开发一个 PHP 项目 需要一些正则表达式的帮助 我希望能够获取用户输入的货币值并删除所有非数字和小数位 分 Ex 2 000 00 到 2000 2 000 00 美元 到 2000 2abc000 到 2000 2 000 到
  • Java 中支持多少维数组,例如 a[1][1][1][1]....[1]? [复制]

    这个问题在这里已经有答案了 Java支持多少维数组a 1 1 1 1 1 我可以为数组声明无限数量的维度吗 数组维数限制为 255 有趣的是 JLS定义的Java编程语言没有这样的限制 但是你可以在JVM规范 http docs oracl
  • PHP 中消息队列和工作系统的有效架构?

    我正在尝试了解我想要在 PHP 应用程序中实现的消息队列模型和作业 我的目标是卸载需要发送到多个第三方 API 的消息 数据 因此访问它们不会减慢客户端的速度 所以将数据发送到消息队列是理想的 我考虑过仅使用 Gearman 来保存 MQ
  • 保存下拉列表中的值

    这是我的情况 我有 2 页 一页用于选择值 一页用于编辑与该值关联的数据库相关内容 现在 我对如何将从下拉列表中选择的值保存到 PHP 的变量中一无所知 并且已经进行了相当多的研究 有任何想法吗 HTML
  • 未捕获的 SoapFault 异常:[Client] 函数不是此服务的有效方法

    当我尝试使用一些数据访问 wsdl 中的函数 使用 php 中的肥皂客户端 时 出现以下错误 Uncaught SoapFault exception Client Function function nameis not a valid
  • Elasticquent(ElasticSearch) Laravel 限制

    您好 我尝试使用 elasticSearch 查询获取所有结果 但如果 limit 值为 null 则仅返回 10 个结果 videos Video searchByQuery match gt field gt request gt fi
  • PHP strtotime +1 个月添加额外一个月[重复]

    这个问题在这里已经有答案了 我有一个简单的变量 可以将今天添加一个月 endOfCycle date Y m strtotime 1 month 今天是 2013 年 1 月 所以我希望返回 2013 02 但我得到的是 2013 03 我
  • 将可点击的锚标记转换为 html 文档中的纯文本

    我正在尝试匹配 a 我的内容中的标签 并将其替换为链接文本 后跟打印版本的方括号中的 url 如果只有 href 则以下示例有效 如果 a 包含另一个属性 它匹配太多并且不会返回所需的结果 我怎样才能匹配 URL 和链接文本 就是这样 这是
  • FOSRestBundle:显示我的自定义异常消息

    我试图在 FOSRestBundle 中添加异常的自定义控制 但它似乎忽略了我的自定义消息 响应的状态代码正常 I have throw new HttpException 404 User id not found 但得到这个 json

随机推荐

  • 如何在 pydev 中启用事后调试?

    每当我的程序引发未处理的异常时 我想让 pydev 进入交互式控制台模式 但我不知道该怎么做 正如它现在的行为一样 会报告异常并立即终止进程 经过一番搜索后我发现了这个 建议使用 pydevd set pm excepthook 但是 当我
  • 如何在 R 中将数组转换为 data.table 并返回?

    这是最直接的方法吗将数组转换为 data table require data table require ggplot2 this returns a data table with both array s dimensions and
  • iPhone 用户联系信息

    如果您查看 设置 邮件 联系人 日历 下 有一个用于指定您的个人信息的设置 我的信息 设置 它基本上可以让您从联系人列表中选择一个条目作为您的个人资料 有谁知道如何以编程方式访问这些信息 不 遗憾的是 您无法直接访问 我的信息 联系信息 您
  • 撤消 git 命令 - git checkout --

    有没有办法撤消以下 git 命令 git checkout 我试图删除添加到存储库目录但未暂存或提交的文件 该命令似乎没有这样做 而是更改了其他一些文件 Update 未跟踪的归档文件和未暂存的文件之间存在差异 在这种情况下 我想找到一种方
  • Heroku 语言区域设置不起作用

    我在 heroku 上的语言区域设置似乎不起作用 On my local mashine 1 maj Heroku 01 May 00 00 My view Locale en hello Hello world views paginat
  • 使用 PDFBox 将 UTF-8 编码字符串写入 PDF [重复]

    这个问题在这里已经有答案了 我在使用 PDFBox 将 unicode 字符写入 PDF 时遇到问题 下面是一些生成垃圾字符而不是输出 的示例代码 我可以添加什么来获得对 UTF 8 字符串的支持 PDDocument document n
  • 当产品价格为零时隐藏“添加到购物车”按钮

    我有一个基于活动的 WordPress 网站 我在该网站上使用 WooCommerce 出售门票 有没有办法隐藏零成本产品的 添加到购物车 按钮 Thanks 您在主题中编写此代码function php function remove a
  • 您可以在 makefile 中执行 $(wildcard %/**/*.c) 吗?

    作为后续这个问题 还有一个情况我在几个小时的修修补补中还没有弄清楚 这是 makefile 当前的样子 output shell find lib type f name build js or name build css myth no
  • Bare-Except 不受欢迎的任何原因

    在某种程度上 我想知道为什么在 Python 中使用裸异常会如此令人不悦 如果我有一个完整的程序正在运行并且我做了类似的事情 我就会明白 import sys from application import program try prog
  • 如何在 CSS3 中为元素设置摆动动画?

    自从我看到国库网站还有树上摆动的标志效果 我一直在尝试重现 box width 50px height 50px background blue box shadow 0 0 5px blue margin 100px float left
  • 无法在 AVAudioplayer 中实施前向操作

    我正在使用 AVAudioplayer 播放一些音频文件 我有一些控件 例如前进和后退 倒带工作正常 但前进则不然 void rewind AVAudioPlayer player rewTimer userInfo player curr
  • 使用 python sdk 在 azure 中的 Linux 虚拟机中运行命令

    我发现azure python sdk提供了以下在linux虚拟机中运行命令的方法 from azure mgmt compute import compute management client from azure common cre
  • Android:使用默认音乐播放器播放歌曲文件

    有没有办法使用默认媒体播放器播放媒体 我可以使用以下代码来做到这一点 Intent intent new Intent Intent ACTION VIEW MimeTypeMap mime MimeTypeMap getSingleton
  • char 和 unsigned char 有什么区别?

    已编辑将 C C 更改为 C 请帮我找到一个明确的澄清char and unsigned char特别是当我们在嵌入式设备和普通PC之间传输数据时 缓冲区和普通PC之间的区别 unsigned char和朴素的char 您问的是两种不同的语
  • linux下Java RandomAccessFile.java无法正常工作

    我试图在java中实现简单的tail f linux命令 这是我的代码 try position within the file File file new File home curuk monitored log txt RandomA
  • 如何使用 django-simple-history 存储 ManyToManyField 的历史记录。

    如何使用 django simple history 存储 ManyToManyField 的历史记录 我使用带有属性 m2m filds 的 HistoricalRecords 但它抛出错误 意外的关键字参数 m2m fields 我是
  • 增强 ggvis 轴

    我正在寻找增强图表的最佳方法 library dplyr library ggvis df lt data frame Year c 1954 2013 Count rep as integer c 1 3 4 2 15 df gt ggv
  • 使用 AppleScript 将 .rtf 文本复制到电子邮件正文中

    我有一个 AppleScript 应用程序 它可以创建一封电子邮件 在 Mail app 中 其中包含我通过对话框选择的选项中的附件 文本模板存储在 rtf格式 以便非程序员可以根据自己的意愿更改文本模板 我可以从以下地址创建电子邮件 tx
  • C++ 中并行向量的 find_first

    我有一个相当大的向量 一些向量成员并行地匹配某个条件 我想找到与条件匹配的第一个元素 我的问题与这个问题非常相似 tbb 并行查找第一个元素 但我没有tbb 检查条件非常繁琐 所以我无法依次对所有条件进行检查 这就是为什么我想并行运行它 我
  • php - 如何合并每个数组具有不同元素数的二维数组

    我有 2 组二维数组 我想合并成 1 个二维数组 但每个数组中的元素数量不相同 并且前 2 个元素相同 我不想重复它 这是它 第一个二维数组 Array 0 gt Array 0 gt 25 2 2013 1 gt 8 45 a m 2 g