ホームページ バックエンド開発 PHPの問題 PHPで二次元配列の値を取得する方法

PHPで二次元配列の値を取得する方法

Apr 24, 2023 pm 02:49 PM

PHP では、2 次元配列は、別の配列内にネストされた配列と見なされます。このうち、外側の配列のキーは任意のデータ型で、値は配列です。内部配列のキーには任意のデータ型を指定でき、値には任意のデータ型を指定できます。実際の開発では、2次元配列が広く使われる場面が多くあります。場合によっては、2 次元配列の値を取得する必要がある場合は、関連する関数を使用する必要があります。

1. 2 次元配列の値にアクセスする

2 次元配列の値にアクセスするには、添字を順番に指定する、つまりキーを指定する必要があります。外側の配列のキーと内側の配列のキーの 2 次元配列の値。以下に例を示します。

$arr = array(
    "first" => array(
        "name" => "Tom",
        "age" => 18,
        "gender" => "male"
    ),
    "second" => array(
        "name" => "Jerry",
        "age" => 19,
        "gender" => "female"
    )
);

echo $arr["first"]["name"];
ログイン後にコピー

上の例では、2 つの要素 ("first" と "second") を持つ 2 次元配列 $arr を定義します。各要素は、異なるキーと値のペアを含む配列です。添え字を指定することで、「first」要素の「name」キーに対応する値にアクセスします。結果は「トム」になるはずです。

2. 2 次元配列を走査する

2 次元配列を走査するには、loop ステートメントを使用する必要があります。 2 次元配列は別の配列をネストするため、2 つのループ ステートメントを使用して外側の配列と内側の配列をそれぞれ走査する必要があります。以下に例を示します。

$arr = array(
    "first" => array(
        "name" => "Tom",
        "age" => 18,
        "gender" => "male"
    ),
    "second" => array(
        "name" => "Jerry",
        "age" => 19,
        "gender" => "female"
    )
);

foreach ($arr as $key1 => $value1){
    echo $key1 . '<br>';
    foreach ($value1 as $key2 => $value2){
        echo $key2 . ': ' . $value2 . '<br>';
    }
    echo '<br>';
}
ログイン後にコピー

上の例では、2 つの foreach ループ ステートメントを使用します。外側のループでは、$key1 は外側の配列の要素のキーを参照し、$value1 は外側の配列 (つまり、内側の配列) の要素の値を参照します。内部ループでは、$key2 は内部配列内の要素のキーを参照し、$value2 は内部配列内の要素の値を参照します。最終的な結果出力は次のとおりです:

first
name: Tom
age: 18
gender: male

second
name: Jerry
age: 19
gender: female
ログイン後にコピー

3. キーワードを使用して 2 次元配列の値を検索します

実際の開発では、2 次元配列をクエリする必要がある場合があります。いくつかの組み込み関数を使用して配列を操作できます。ここでは、array_column() 関数を使用して 2 次元配列の演算を実装します。

array_column(array $input,mixed$column_key[,mixed$index_key=null])

この関数の機能は、指定されたキーに従って二次元配列を取り出し、 1 次元配列を返します。このうち、$inputパラメータは処理が必要な2次元配列、$column_keyパラメータは取り出したいキー、$index_keyパラメータはキーとして使用する必要のあるキーです。新しい配列。

以下は例です:

$arr = array(
    array("name"=>"Tom", "age"=>18, "gender"=>"male"),
    array("name"=>"Jerry", "age"=>19, "gender"=>"female"),
    array("name"=>"Lucy", "age"=>17, "gender"=>"female")
);

$names = array_column($arr, 'name');
$genders = array_column($arr, 'gender');

print_r($names);
print_r($genders);
ログイン後にコピー

上の例では、2 次元配列 $arr を定義します。ここで、各要素には「名前」、「年齢」、「性別」が含まれます。鍵は3つ。 array_column() 関数を使用して、すべての「名前」とすべての「性別」にそれぞれ対応する値を取得します。最終的な出力結果は次のとおりです。

Array
(
    [0] => Tom
    [1] => Jerry
    [2] => Lucy
)

Array
(
    [0] => male
    [1] => female
    [2] => female
)
ログイン後にコピー

開発中は、実際の状況に応じて 2 次元配列に対する演算を実行する必要があります。これらの操作をマスターすると、開発に活用するのに役立ちます。

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

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)