【问题标题】:How can I efficiently get a sub array to be the main array without a foreach loop?如何在没有 foreach 循环的情况下有效地将子数组作为主数组?
【发布时间】:2012-09-17 07:25:12
【问题描述】:

这是我的数组:

Array
(
    [0] => Array
        (
            [same_key] => 1000
        )
    [1] => Array
        (
            [same_key] => 1001
        )
    [2] => Array
        (
            [same_key] => 1002
        )
    [3] => Array
        (
            [same_key] => 1003
        )
)

我想在不使用 foreach 循环的情况下获得以下内容。这可能吗?

Array
(
    [0] => 1000
    [1] => 1001
    [2] => 1002
    [3] => 1003
)

有什么建议吗?

【问题讨论】:

  • foreach 循环是个好方法....为什么不 foreach ??
  • 已经有一段时间了,但我认为有一些数组函数可以做到这一点而无需花费循环。
  • 看看这个How to Answer[1] [1]:stackoverflow.com/questions/526556/…也许它会帮助你更多
  • 哦,是的。很抱歉延迟接受您的答案。像魅力一样工作。

标签: php arrays for-loop multidimensional-array foreach


【解决方案1】:

以下方法可以解决问题

$myArray = Array
(
    0 => Array
        (
            'adfadf'=> 1000
        ),
    1 => Array
        (
            'adfadf' => 1001
        ),
    2 => Array
        (
            'adfadf' => 1002
        ),
    3 => Array
        (
            'adfadf' => 1003
        )
);

$myArray = array_map('current', $myArray));

【讨论】:

    【解决方案2】:

    您可以通过$array = array_map('current', $array); 完成此操作

    live example

    输出

    【讨论】:

    • 该代码在他的情况下不起作用。 array_map('current', $array[0]) 只会返回他的数组中的第一个元素,在这种情况下为 1000。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-18
    • 2017-03-18
    相关资源
    最近更新 更多