PHP配列の添え字を変更する方法

PHPz
リリース: 2023-04-27 10:40:32
オリジナル
1053 人が閲覧しました

PHP では、配列は非常に一般的で広く使用されているデータ型です。開発プロセス中、さまざまなニーズを満たすために配列の添え字を変更する必要がある場合があります。

配列の添字を変更するにはさまざまな方法がありますが、以下では一般的な方法をいくつか紹介します。

1. array_combine() 関数を使用する

array_combine() 関数は 2 つの配列を新しい配列に結合できます。最初の配列の値は新しい配列のキーであり、その値は2 番目の配列のキーは新しい配列のキーであり、配列の値は新しい配列の値です。

次のコードを使用すると、配列の添字を元の数値形式から 1 から始まる数値形式またはその他の特定の文字列形式に変更できます。

$old_arr = array('a', 'b', 'c');
$new_arr = array_combine(range(1, count($old_arr)), $old_arr);
ログイン後にコピー

ここでの range() 関数は To を使用します。 1 から元の配列の長さまでの数値の配列を生成します。実行結果は次のとおりです:

Array
(
    [1] => a
    [2] => b
    [3] => c
)
ログイン後にコピー

2. array_values() 関数

array_values() 関数を使用して、配列のすべての値を返し、キーのインデックスを再作成します。この関数は配列の添え字を変更するために使用できます。

次のコードを使用して、0 から始まる配列のインデックスと 1 ずつ増加する数値の添え字を再割り当てできます。

$old_arr = array('a', 'b', 'c');
$new_arr = array_values($old_arr);
ログイン後にコピー

実行結果は次のとおりです。

Array
(
    [0] => a
    [1] => b
    [2] => c
)
ログイン後にコピー

3. foreach ループの使用

foreach ループを使用すると、配列を走査して各要素の添字を変更したり、参照を使用して各要素の値を変更したりできます。

次のコードは、配列の添え字を変更する方法を示しています:

$old_arr = array('one' => 1, 'two' => 2, 'three' => 3);
$new_arr = array();
foreach ($old_arr as $key => $value) {
    $new_arr[$key . '_new'] = $value;
}
ログイン後にコピー

実行結果は次のとおりです:

Array
(
    [one_new] => 1
    [two_new] => 2
    [three_new] => 3
)
ログイン後にコピー

4. array_map() 関数を使用します

Use array_map() 関数は、配列の各要素にコールバック関数を適用し、コールバック関数によって処理された要素を含む新しい配列を返します。

次のコードを使用して、配列の添え字を小文字に変更できます:

$old_arr = array('APPLE' => 'red', 'ORANGE' => 'orange', 'BANANA' => 'yellow');
$new_arr = array_map('strtolower', array_flip($old_arr));
ログイン後にコピー

ここでの array_flip() 関数は、配列のキーと値を交換するために使用されます。

Array
(
    [red] => apple
    [orange] => orange
    [yellow] => banana
)
ログイン後にコピー

まとめ

この記事では、array_combine()、array_values()、foreach ループ、array_map() 関数の使用など、PHP 配列の添字を変更する一般的な方法をいくつか紹介します。

実際の開発では、ニーズに応じてさまざまな操作方法を選択できます。どの方法を使用する場合でも、変更された配列が元の要件を満たしているかどうかに注意する必要があります。

以上がPHP配列の添え字を変更する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート