【问题标题】:array merge by key value in php and in js在php和js中按键值合并数组
【发布时间】:2011-11-25 09:39:32
【问题描述】:

我有这个。

     array(3) {
  ["a"]=>
  array(2) {
    [0]=>
    string(1) "a"
    [1]=>
    string(1) "b"
  }
    ["a"]=>
  array(2) {
    [0]=>
    string(1) "c"
    [1]=>
    string(1) "d"
  }
  ["b"]=>
  array(3) {
    [0]=>
    string(1) "a"
    [1]=>
    string(1) "b"
    [2]=>
    string(1) "c"
  }
}

如何在 php 和 js 中合并以返回相同的数组,如下所示:

array(2) {
  ["a"]=>
  array(4) {
    [0]=>
    string(1) "a"
    [1]=>
    string(1) "b"
    [2]=>
    string(1) "c"
        [3]=>
    string(1) "d"
  }
    ["b"]=>
      array(3) {
        [0]=>
        string(1) "a"
        [1]=>
        string(1) "b"
        [2]=>
        string(1) "c"
      }
    }

【问题讨论】:

  • 数组的键和值是什么?您能否将数组记为 PHP 变量,以便更清楚?
  • 如果我在堆栈上发帖是为了从比我更有经验的人那里获得一些好的代码,我认为这不是建设性的指导链接:/
  • 请提供更多细节,也许是一个真实的示例数组...在您的示例中,您有两个名为“a”的键,这不应该发生并且是一个问题。这似乎是您要解决的问题的一部分。我建议修复生成错误数组的代码,而不是事后尝试修复它
  • 嗯,我认为你是对的,我手动编写了数组,但脚本不可能生成像第一个数组一样的数组(未合并)? :P 也许我快疯了,我需要休息:/

标签: php javascript arrays merge


【解决方案1】:

在php中,你可以使用array_merge_recursive

在 Js 中,你没有原生这样的东西。
但是你在 js 中有一个 array_merge_recursive 版本

【讨论】:

  • 因为也许我不明白,但在 php 手册中谈到 2 个数组,这里我有 1 个大数组或者我弄错了?
  • Ispuk,先拆分数组,然后将它们传递给array_merge_recursive 或直接使用call_user_func_array
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-12-19
  • 2019-12-03
  • 2022-06-14
  • 2017-02-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多