dongtuhe0506 2017-09-25 15:21
浏览 401

从另一个数组替换一个数组的值,使用值替换为键,php

I have two arrays:

$array1 = [29, 1=>'a', 2=>'x',3=>'c', 11];
$array2 = ['a'=>20, 'x'=>21, 'c'=>23];

I want to get an array that looks like:

$array3 = [29, 20, 21, 23, 11];

I know how to do it with a foreach loop, but I was wondering if it was a way to do it as a one liner, or maybe with some sort of anonymus function. Thank you!!

  • 写回答

4条回答 默认 最新

  • dragon87836215 2017-09-25 15:28
    关注

    An attempt with a one-liner :

    $array1 = [29, 1=>'a', 2=>'x',3=>'c', 11];
    $array2 = ['a'=>20, 'x'=>21, 'c'=>23];
    
    $array3 = array_values(array_filter(array_merge($array1,$array2),function($i){return is_int($i);}));
    
    print_r($array3);
    
    // Outputs :
    /*
    Array
    (
        [0] => 29
        [1] => 11
        [2] => 20
        [3] => 21
        [4] => 23
    )
    */
    
    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题