0

PHP配列があります。

array
  0 => int 1
  1 => int 13
  2 => int 16
  3 => int 17
  4 => int 18

私が返したいのは、次のような新しい配列です。

array(1, 13, 16, 17, 18)

すなわち。値は新しい配列のキーになりました

試しましarray_flipたが、値を削除する必要があります。私はグーグルで検索しましたが、関連するものは何もないようです。

誰かが私を正しい方向に向けたり、より良い解決策を提供したりすることができれば、それは大いにありがたいです。

編集:

array_flip戻り値:

array
  1 => int 0
  13 => int 1
  16 => int 2
  17 => int 3
  18 => int 4

私が欲しいのはただ:array(1, 13, 16, 17, 18)

私はこれを間違って理解していますか?必要な出力には、実際には各キーにnull値がありますか?

4

2 に答える 2

1

配列の仕組みを理解していないようです。少なくとも 1 つの値を含むすべての配列には、常にキーと値があります。この場合:

array(1, 13, 16, 17, 18)

値は 1、13、16、... で、キーは PHP によって暗黙的に設定されます。この場合、値 1 にはキー 0 があり、値 13 にはキー 1 があります。

最初の配列と 2 番目の配列の唯一の違いは、最初の配列ではキーが明示的に定義されていることです。つまり、配列は同一です。

于 2012-05-11T08:13:35.197 に答える