Php 分解数组元素的每个值

Php 分解数组元素的每个值,php,arrays,explode,Php,Arrays,Explode,我有这样一个数组: Array ( [2] => 2,6 [3] => 1 [4] => 14 [5] => 10 [6] => 8 ) 我想分解数组的每个元素,并使用array_map返回一个新数组,这样我就可以避免使用循环,并创建额外的函数来回调 O/p应类似于: Array ( [2] => Array ( [0] => 2 [1] => 6 ) [3] =

我有这样一个数组:

Array
(
   [2] => 2,6
   [3] => 1
   [4] => 14
   [5] => 10
   [6] => 8
)

我想分解数组的每个元素,并使用array_map返回一个新数组,这样我就可以避免使用循环,并创建额外的函数来回调

O/p应类似于:

  Array
(
[2] => Array
    (
        [0] => 2
        [1] => 6
    )

[3] => Array
    (
        [0] => 1
    )

[4] => Array
    (
        [0] => 14
    )

[5] => Array
    (
        [0] => 10
    )

[6] => Array
    (
        [0] => 8
    )

)
尝试以下代码

$newArr = array_map(function($val, $key){
    return explode(",", $val);
}, $arr);
你可以用

$result = array_map(function($val) {
    return explode(',', $val);
}, $input);
这将导致

Array
(
    [2] => Array
        (
            [0] => 2
            [1] => 6
        )

    [3] => Array
        (
            [0] => 1
        )

    [4] => Array
        (
            [0] => 14
        )

    [5] => Array
        (
            [0] => 10
        )

    [6] => Array
        (
            [0] => 8
        )

)
这将在支持匿名函数的PHP>=5.3上运行。

$data = array(2 => '2,6',3 => '1',4 => '14',5 => '10',6 => '8');

foreach($data as $key => $val) {
    $new = explode(',',$val);
    $data[$key] = $new;
}
$output = $data;

echo '<pre>';
print_r($output);
你也可以

Array
(
    [2] => Array
        (
            [0] => 2
            [1] => 6
        )

    [3] => Array
        (
            [0] => 1
        )

    [4] => Array
        (
            [0] => 14
        )

    [5] => Array
        (
            [0] => 10
        )

    [6] => Array
        (
            [0] => 8
        )

)
这也将导致


那么,在哪里使用数组映射呢?您还知道,在数组的末尾,数组映射也将在数组上循环。避免使用循环,并创建额外的函数来回调-数组映射也将回调函数用作其第一个函数argument@AlokJha你试过我的答案了吗?避免使用循环和创建额外的函数来回调-因为我们已经有函数爆炸了,所以不要再创造其他的function@mohit,是的,这对我来说很有用,谢谢。我不想要任何额外的循环,因为我们有数组映射。这个代码片段可以解决这个问题,真的有助于提高你文章的质量。请记住,您将在将来回答读者的问题,这些人可能不知道您的代码建议的原因。还请尽量不要用解释性注释挤满您的代码,因为这会降低代码和解释的可读性!
Array
(
    [2] => Array
        (
            [0] => 2
            [1] => 6
        )

    [3] => Array
        (
            [0] => 1
        )

    [4] => Array
        (
            [0] => 14
        )

    [5] => Array
        (
            [0] => 10
        )

    [6] => Array
        (
            [0] => 8
        )

)