【问题标题】:PHP - How to check two arrays and search for matching keys and merge the valuesPHP - 如何检查两个数组并搜索匹配的键并合并值
【发布时间】:2016-08-02 12:01:18
【问题描述】:

如何检查两个数组并搜索匹配键并将第一个数组的值与第二个数组的匹配键合并。请帮助我,因为我是新手。

示例:

1st array = {id => 11,name => 'name',age => 18 }


2nd array = {id,name,age,school}

我想通过将匹配值添加到第二个数组来得到结果

2nd array = {id => 11,name => 'name',age => 18,school => }

【问题讨论】:

标签: php arrays


【解决方案1】:

试试这个

$a = ['id' => 11,'name' => 'name','age' => 18];
$b = array_flip(['id','name','age','school']);
foreach($b as $key => &$value){
    $value = '';
}
$result = array_merge($b, $a);

【讨论】:

    【解决方案2】:

    一种简单的方法是循环

    $first= array('id' => 11,'name' => 'name','age' => 18 );
    
    $second = array('id','name','age','school');
    
    foreach ($second as $value) {
        if(isset($first[$value])){
            $final[$value] =  $first[$value];
        }
    
    };
    print_r($final);
    

    第二次数组翻转和数组合并

    $first = ['id' => 11,'name' => 'name','age' => 18];
    $second= array_flip(['id','name','age','school']);
    foreach($second as $key => s$value){
        $value = '';
    }
    $result = array_merge($second, $first);
    print_r($result);
    

    【讨论】:

      【解决方案3】:

      使用数组合并

      <?php
      $array1 = array('id' => '11', 'name' => 'name', 'age' => 18);
      $array2 = array('id','name','age','school');
      
      $array3 = array_merge(array_fill_keys($array2, null), $array1);
      
      print_r($array3);
      ?>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-12-13
        • 2016-07-08
        • 1970-01-01
        • 2018-02-01
        • 2014-05-08
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多