我有一个数组“$ abc”,它有9个元素,如: -
Array
(
[a] => Jack
[b] => went
[c] => up
[d] => the
[e] => hill
[f] => but
[g] => never
[h] => came
[i] => back
)
现在我只需要将从“b”索引开始的4个元素连接到“e”索引。但我不知道该怎么办。在所有数组元素连接的情况下,我使用了PHP的“implode()”函数。
非常感谢任何帮助。
答案 0 :(得分:3)
您需要先提取所需的值,然后使用implode
。您可以使用array_slice
:
echo implode(" ", array_slice($abc, 1, 4));
这会产生went up the hill
。
如果您需要使用文字键,则需要更具创意。在你的情况下,最好只是循环遍历数组并进行比较,但你也可以做一些异国情调:
echo implode(" ", array_intersect_key($abc, array_flip(range('b', 'e'))));
答案 1 :(得分:1)
$test = array ( 'a' => 'Jack',
'b' => 'went',
'c' => 'up',
'd' => 'the',
'e' => 'hill',
'f' => 'but',
'g' => 'never',
'h' => 'came',
'i' => 'back'
);
$start = 'b';
$end = 'e';
$result = implode(' ',array_slice($test,array_search($start,array_keys($test)),array_search($end,array_keys($test))-array_search($start,array_keys($test))+1));
echo $result;