微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PHP – 向爆炸的多维数组添加键

我正在尝试将键名添加到爆炸的多维数组中

我是这样的:

    $datos = $_POST['dataGeneral'];

    // Detecting "<" delimiter and PHP_EOL:
    /* 
       1<1<Titulo Episodio<Descripción Episodio<http://www.google.com
       1<2<Titulo Episodio 2<Descripción Episodio 2<http://www.google.com 
    */

    $data = explode(PHP_EOL, $datos);
    $num = 0;

    foreach($data as &$val){
        $exp = explode("<", $val);
        $val = array_combine(range($num, $num+sizeof($exp)-1), $exp);
        $num += sizeof($exp);
    }

    echo '<pre>CheckDelimiter:<br/>';
        print_r($data);
    echo '</pre>';

结果:

enter image description here

这工作正常,但我想为这个数组元素添加键:

这就是我所说的:

Array
(
    [post-1] => Array
        (
            [temporada] => 1
            [episodio] => 1
            [titulo] => Titulo Episodio
            [descripcion] => Descripción Episodio
            [link] => http://www.google.com
        )

    [post-2] => Array
        (
            [temporada] => 1
            [episodio] => 2
            [titulo] => Titulo Episodio 2
            [descripcion] => Descripción Episodio
            [link] => http://www.google.com
        )

)

你能帮我吗?

解决方法:

由于您已经拥有所需数组值的基本设置,因此只需再次使用array_combine.

这次使用您想要的关联键:

$new_data = array();
foreach($data as $k => $val){
    $exp = explode("<", $val);
    // $val = array_combine(range($num, $num+sizeof($exp)-1), $exp);
    // instead of using numeric like above
    $val = array_combine(array('temporada', 'episodio', 'titulo', 'descripcion', 'link'), $exp);
    $new_data['post-' . ($k + 1)] = $val;
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐