Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/236.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使数组中的元素爆炸_Php - Fatal编程技术网

Php 使数组中的元素爆炸

Php 使数组中的元素爆炸,php,Php,如何使数组中的元素数组再次爆炸。 我有一个这样的数组 echo "<pre>"; print_r($pks); 我想是这样的, Array ( [0] => Array ( [date] => 2017-04-15 [vessel] => KMTC_HOCHIMINH ) [1] => Array ( [date] => 2017-04-15 [vessel] =

如何使数组中的元素数组再次爆炸。 我有一个这样的数组

echo "<pre>";
print_r($pks);
我想是这样的,

Array
(
[0] => Array
    (
        [date] => 2017-04-15
        [vessel] => KMTC_HOCHIMINH
    )

[1] => Array
    (
        [date] => 2017-04-15
        [vessel] => OOCL_NAGOYA
    )

)
php上的哪些键可以像这样处理数组。 请告知

更新 这个怎么样

array_walk($pks, function(&$a) {
    $a = array_combine(['date', 'vessel'], explode('||', $a));
});

您可以使用
array\u walk()
(如果需要,也可以使用
foreach
):

Foreach方法:

Array
(
    [0] => Array
        (
            [date] => 2017-04-15
            [vessel] => KMTC_HOCHIMINH
        )

    [1] => Array
        (
            [date] => 2017-04-15
            [vessel] => OOCL_NAGOYA
        )

)
但是,每个数组的键不会是
record
,因为不可能多次使用同一个键

输出:

$pks = array_map('explode', array_fill(0, count($pks), '||'), $pks);
奖励方法,因为我喜欢使用数组:

foreach($pks as $k => $v) {
    $values = explode('||', $v);
    $result[] = array_combine(range(1, count($values)), $values);

    //added
    $res[] = array_combine(['date', 'vessel'], $values) ;

}

试试这个,检查

Array
(
    [0] => Array
        (
            [1] => 2017-04-15
            [2] => KMTC_HOCHIMINH
        )

    [1] => Array
        (
            [1] => 2017-04-15
            [2] => OOCL_NAGOYA
        )

)
结果


谢谢你,朋友,超级粉丝。请查看我更新的问题。@FadlyDzil编辑了
array_walk()
foreach
方法以产生预期的输出。如果我的答案解决了你的问题,请把它标记为这样。@FadlyDzil现在检查一下
$pks = array_map('explode', array_fill(0, count($pks), '||'), $pks);
foreach($pks as $k => $v) {
    $values = explode('||', $v);
    $result[] = array_combine(range(1, count($values)), $values);

    //added
    $res[] = array_combine(['date', 'vessel'], $values) ;

}
Array
(
    [0] => Array
        (
            [1] => 2017-04-15
            [2] => KMTC_HOCHIMINH
        )

    [1] => Array
        (
            [1] => 2017-04-15
            [2] => OOCL_NAGOYA
        )

)