2

次のように、9つの要素を持つ配列"$abc"があります。-

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 に答える