php – 组合数组和concat值?

解释起来有点复杂,所以这里有简单的具体例子:

数组1:

Array
(
    [4] => bim
    [5] => pow
    [6] => foo 
)

数组2:

Array
    (
        [n] => Array
            (
                [0] => 1
            )

        [m] => Array
            (
                [0] => 1
                [1] => 2
            )

        [l] => Array
            (
                [0] => 1
                [1] => 4
                [2] => 64
            )

我需要输出一个数组3,

数组预期:

Array
        (
            [bim] => n-1
            [pow] => Array
                (
                    [0] => m-1
                    [1] => m-2
                )

            [foo] => Array
                (
                    [0] => l-1
                    [1] => l-4
                    [2] => l-64
                )

最终回应OUTPUT预期:

bim n-1,pow m-1 m-2,foo l-1 l-4 l-64,

我试过这个,但似乎很可惜:

foreach($array2 as $k1 =>$v1){

            foreach($array2[$k1] as $k => $v){
            $k[] =  $k1.'_'.$v);
             }



foreach($array1 as $res =>$val){

            $val = $array2;

            }

谢谢你的帮助,
枷锁

解决方法:

作为您的问题的解决方案,请尝试执行以下代码

<?PHP
 $a=array(4=>'bim',5=>'pow',6=>'foo');
 $b=array('n'=>array(1),'m'=>array(1,2),'l'=>array(1,4,64));
 $keys=array_values($a);
 $values=array();
 foreach($b as $key=>$value)
 {
   if(is_array($value) && !empty($value))
   {
 foreach($value as $k=>$val)
 {
    if($key=='n')
    {
        $values[$key]=$key.'-'.$val;
    }
    else
    {
        $values[$key][]=$key.'-'.$val;
    }
  }
 }
}

$result=array_combine($keys,$values);
echo '<pre>';
print_r($result);
?>

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...