2

我有一个数组“$abc”,它有 9 个元素,如:-

Array
(
    [a] => Jack
    [b] => went
    [c] => up
    [d] => the
    [e] => hill
    [f] => but
    [g] => never
    [h] => came
    [i] => back
)

现在我只需要连接从“b”索引到“e”索引的 4 个元素。但我不知道该怎么办。在连接所有数组元素的情况下,我使用了 PHP 的“implode()”函数。

任何帮助是极大的赞赏。

4

2 回答 2

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'))));
于 2010-08-03T08:09:53.793 回答
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;
于 2010-08-03T08:17:47.027 回答