ホームページ  >  記事  >  バックエンド開発  >  PHPで配列のキー値を変換する方法

PHPで配列のキー値を変換する方法

PHPz
PHPzオリジナル
2023-04-19 10:07:07633ブラウズ

PHP プログラミングでは、配列は非常に一般的なデータ構造です。配列は通常、一連のキーと値のペアで構成されます。キーは配列要素の一意の識別子であり、値は要素に格納されているデータです。実際のアプリケーションでは、さまざまなニーズを満たすために配列のキー値を変換する必要があることがよくあります。

  1. 配列のキー名を小文字に変換する

場合によっては、配列のキー名 (つまり、配列のキー) を一律に変換する必要があります。小文字に変換します。たとえば、ユーザーが送信したフォームデータを受信する場合、ユーザーが入力したキー名の不一致によるエラーを防ぐために、すべてのキー名を小文字に変換できます。

PHP には、すべての配列キー名を小文字に変換できる array_change_key_case 関数が用意されています。この関数の使用法は次のとおりです。

array array_change_key_case ( array $array [, int $case = CASE_LOWER ] )

$array パラメータは変換する必要がある配列で、$case パラメータは変換後の大文字と小文字の形式を指定します。 $case が CASE_LOWER (デフォルト) の場合、すべてのキー名は小文字に変換され、$case が CASE_UPPER の場合、すべてのキー名は大文字に変換されます。

次はコード例です:

// 定义一个大小写不规范的数组
$arr = array(
    'Name' => '张三',
    'AGE' => 20,
    'hObBy' => 'running'
);

// 将数组的键名全部转换为小写字母
$arr = array_change_key_case($arr, CASE_LOWER);

// 输出转换后的数组
print_r($arr);

上記のコードは次の結果を出力します:

Array
(
    [name] => 张三
    [age] => 20
    [hobby] => running
)
  1. 配列キー名は大文字に変換されます

同様に、配列のすべてのキー名を大文字に変換する必要がある場合は、array_change_key_case 関数を使用して、$case パラメーターを CASE_UPPER に設定します。例:

// 定义一个大小写不规范的数组
$arr = array(
    'Name' => '张三',
    'AGE' => 20,
    'hObBy' => 'running'
);

// 将数组的键名全部转换为大写字母
$arr = array_change_key_case($arr, CASE_UPPER);

// 输出转换后的数组
print_r($arr);

上記のコードは次の結果を出力します:

Array
(
    [NAME] => 张三
    [AGE] => 20
    [HOBBY] => running
)
  1. 配列キー名の最初の文字を大文字に変換します

場合によっては、配列を変換する必要があります。キー名の最初の文字は大文字に変換されます。たとえば、ActiveRecord に似た ORM フレームワークを設計する場合、データベース フィールド名を対応するモデル プロパティ名に変換する必要がありますが、モデル プロパティ名は通常大文字で始まります。

PHP には、array_combine という関数が用意されています。この関数は、2 つの配列を新しい配列に結合し、最初の配列の要素を新しい配列のキーとして使用し、2 番目の配列の要素を値として使用できます。新しい配列の。この関数を使用して、新しい配列を生成し、キー名の最初の文字を大文字に変換できます。

次はコード例です:

// 定义一个数组
$arr = array(
    'Name' => '张三',
    'age' => 20,
    'hobby' => 'running'
);

// 将数组的键名的首字母转换为大写字母
$new_arr = array_combine(
    array_map('ucfirst', array_keys($arr)),
    array_values($arr)
);

// 输出转换后的数组
print_r($new_arr);

上記のコードは次の結果を出力します:

Array
(
    [Name] => 张三
    [Age] => 20
    [Hobby] => running
)

上記のコードでは、array_map 関数を使用してキーをマップします。配列の名前を操作します。 array_map 関数はコールバック関数をパラメータとして受け取り、配列内の各要素を処理のためにコールバック関数に渡します。この例では、組み込み関数 ucfirst を使用して、文字列の最初の文字を大文字に変換しました。

  1. 配列のキー名とキー値を交換する

配列のキー名とキー値、つまり元の値を交換する必要がある場合があります。新しい配列のキー値として使用されます。 キー名。元のキー名を新しい配列の値として使用します。この変換はデータを処理するときに非常に一般的であり、迅速な検索とフィルタリングを可能にします。

PHP には、配列のキー名とキー値を交換できる array_flip という関数が用意されています。この関数の使用法は次のとおりです。

array array_flip ( array $array )

$array パラメータは、変換する必要がある配列です。

次はコード例です:

// 定义一个数组
$arr = array(
    'Name' => '张三',
    'Age' => 20,
    'Hobby' => 'running'
);

// 将数组的键名和键值互换
$new_arr = array_flip($arr);

// 输出转换后的数组
print_r($new_arr);

上記のコードは次の結果を出力します:

Array
(
    [张三] => Name
    [20] => Age
    [running] => Hobby
)

上記のコードでは、array_flip 関数がキー名とキーを交換します。元の配列の値を置き換えて、新しい配列を生成します。

概要

PHP プログラミングでは、配列のキーと値の変換は最も一般的な操作の 1 つです。 PHP が提供するいくつかの組み込み関数を使用すると、さまざまなニーズに合わせて配列のキー値を簡単に変換できます。実際の開発では、より良い開発結果を得るために、特定の状況に応じて適切な変換方法を選択する必要があります。

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

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。