使用foreach php合并并构建数组

问题描述 投票:0回答:3

我需要使用foreach构建多维数组有一个包含社交网络名称的数组social_array()

结果应该是这样的:

array(
    'type'          => 'textfield',
    'heading'       => 'social_label1',
    'param_name'    => 'social_name1',
    'description'   => '',
    'edit_field_class' => 'vc_col-sm-4 vc_column-with-padding',
    'group' => __('Social', 'AS')
),
array(
    'type'          => 'textfield',
    'heading'       => 'social_label2',
    'param_name'    => 'social_name2',
    'description'   => '',
    'edit_field_class' => 'vc_col-sm-4 vc_column-with-padding',
    'group' => __('Social', 'AS')
),
...
etc

问题是我的代码只给我一个结果,最后一个

foreach ( social_array() as $icon => $value ) :
    $k = array('type', 'heading', 'param_name', 'description', 'edit_field_class', 'group');
    $v = array('textfield', $value['label'], $icon, '', 'vc_col-sm-4 vc_column-with-padding', 'Social');
    $c = array_combine($k, $v);
    $attributes['params'] = $c;
endforeach;
vc_add_params( 'profile_card', $attributes ); // Note: base for element

社交,如果需要

function social_array(){
        return array(
            'facebook'      =>  array('label' => __('Facebook','AS7'), 'type' => 'text' ),
            'behance'       =>  array('label' => __('Behance','AS7'), 'type' => 'text' ),
            'weibo'         =>  array('label' => __('Weibo','AS7'), 'type' => 'text' ),
            'renren'        =>  array('label' => __('Renren','AS7'), 'type' => 'text' ),
            'dropbox'       =>  array('label' => __('Dropbox','AS7'), 'type' => 'text' ),
            'bitbucket'     =>  array('label' => __('Bitbucket','AS7'), 'type' => 'text' ),
            'trello'        =>  array('label' => __('Trello','AS7'), 'type' => 'text' ),
            'odnoklassniki' =>  array('label' => __('Odnoklassniki','AS7'), 'type' => 'text' ),
            'vk'            =>  array('label' => __('VKontakte','AS7'), 'type' => 'text' ),
            );
    }
php visual-c++ parameters add visual-composer
3个回答
0
投票
您将需要2个foreach循环,因为第一个foreach循环为您提供了其中的所有数组。那么您需要访问每个数组并在其上循环。

0
投票
$attributes['params'] = $c;

0
投票
也许有人会派上用场。工作选项如下。
© www.soinside.com 2019 - 2024. All rights reserved.