数组键,获取数组值,然后逗号分开

时间:2012-02-27 16:33:55

标签: php arrays csv

我有:

$a = array(
    0=>'you',
    1=>'will',
    2=>'be',
    3=>'so',
    4=>'happy',
    5=>'in'
);

$b = array(
    0=>'1',
    1=>'4',
    2=>'5'
);   // (KEYS:1,4,5)

我想要$ a匹配$ b键的值;

所以$ val将是willhappyin

然后用逗号分隔它们......就像:will,happy,in在最后一个之后没有逗号。

我该怎么做? :)

3 个答案:

答案 0 :(得分:7)

$string = implode(",", array_intersect_key($a, array_flip($b)));

<强>说明

array_flip将$ b的切换为

array_intersect_key仅获取$ b中也存在于$ b中的条目。

implode通过逗号将结果数组值连接在一起。

答案 1 :(得分:2)

$c = array();
foreach($b as $key)
{
  $c[] = $a[$key]
}

echo implode(",",$c);

答案 2 :(得分:0)

$out_arr = array();
foreach ($b as $k => $v) {
  array_push($out_arr, $a[$v]);
}

return join($out_arr, ',');