【问题标题】:How do I join arrays in PHP? [duplicate]如何在 PHP 中加入数组? [复制]
【发布时间】:2013-08-12 18:39:30
【问题描述】:

如何加入数组?例如,我在下面有几个单独的错误数组,

$message = array();
$message[] = array('error1' => '<error elementid="file_rename" message="bla bla 1." />');
$message[] = array('error2' => '<error elementid="file_rename" message="bla bla 2." />');
print_r($message);

结果,

Array (
    [0] => Array
        (
            [error1] => <error elementid="file_rename" message="bla bla 1." />
        )

    [1] => Array
        (
            [error2] => <error elementid="file_rename" message="bla bla 2." />
        )

)

但我真的想要这个,

Array (
    [error1] => <error elementid="file_rename" message="bla bla 1." />
    [error2] => <error elementid="file_rename" message="bla bla 2." />

)

【问题讨论】:

  • 不是几个数组就是一个数组,你把它留给php给key值
  • $message[$key] = $value
  • 这是asked several times。

标签: php arrays multidimensional-array


【解决方案1】:
$message = array();
$message['error1'] =  '<error elementid="file_rename" message="bla bla 1." />';
$message['error2'] = '<error elementid="file_rename" message="bla bla 2." />';
print_r($message);

【讨论】:

  • 我认为数组索引必须用引号引起来
  • 应该是,一定不是,固定的。
【解决方案2】:

如果键不重叠,那么您可以使用加号+ 运算符安全地加入数组。

$arr1 = array('error1' => '<error elementid="file_rename" message="bla bla 1." />');
$arr2 =  array('error2' => '<error elementid="file_rename" message="bla bla 2." />');

$message = $arr1 + $arr2;

结果:

Array (
    [error1] => <error elementid="file_rename" message="bla bla 1." />
    [error2] => <error elementid="file_rename" message="bla bla 2." />
)

【讨论】:

    【解决方案3】:

    或者使用array_merge:

    $newArray = array_merge($arr1, arr2);
    

    【讨论】:

      猜你喜欢
      • 2020-06-10
      • 2023-01-08
      • 2014-08-20
      • 1970-01-01
      • 1970-01-01
      • 2017-07-26
      • 1970-01-01
      • 2021-09-02
      • 1970-01-01
      相关资源
      最近更新 更多