ホームページ > バックエンド開発 > PHPの問題 > PHPで配列内の部分配列を呼び出す方法

PHPで配列内の部分配列を呼び出す方法

PHPz
リリース: 2023-04-24 16:09:57
オリジナル
533 人が閲覧しました

PHP では、データを保存および管理するために配列を使用する必要があることがよくあります。場合によっては、別の配列を含む配列、いわゆる多次元配列に遭遇することがあります。 PHPで別の配列内に含まれる配列を呼び出すにはどうすればよいですか?この記事では詳しく紹介していきます。

  1. 多次元配列とは

多次元配列とは、配列内に別の配列または複数の配列を格納する配列を指します。複数のネスト レベルを持つことも、異なるデータ型にすることもできます。例:

$arr = array(
    '中国' => array('北京', '上海', '广州'),
    '美国' => array('纽约', '洛杉矶', '芝加哥'),
    '英国' => array('伦敦', '曼彻斯特', '爱丁堡')
);
ログイン後にコピー

この例では、$arr 配列には 3 つのキーと値のペアが含まれており、各キーと値のペアは配列であり、これらの配列には複数の都市名が含まれています。ネストレベルが 2 であるため、これは 2 次元配列です。

もちろん、多次元配列はより複雑になる可能性があり、ネストされたレベルの数は自由に増やすことができます。

  1. 多次元配列内の配列を呼び出す方法

PHP で多次元配列内の要素にアクセスするには、添え字 (つまり、キー値) にアクセスします。たとえば、次のメソッドを使用して、配列 $arr 内の中国の都市の最初の都市を出力できます。

echo $arr['中国'][0]; //输出北京
ログイン後にコピー

ここで、$arr['China'] は特定の都市名ではなく、配列を返すことに注意してください。 , したがって、角括弧 [] を使用してこの配列内の要素にアクセスできます。同様に、米国の 3 番目の都市 (つまり、シカゴ) を訪問したい場合は、次のように書くことができます:

echo $arr['美国'][2]; //输出芝加哥
ログイン後にコピー

多次元配列のアクセス モードは、1 次元配列のアクセス モードと似ています。ただし、ネストされた部分配列にアクセスするには追加の括弧を追加する必要があります。要素の値を変更する必要がある場合は、このメソッドを使用して操作することもできます。

  1. 多次元配列のループ

実際の開発では、多次元配列の走査が必要になることがよくあります。多次元配列内の特定の要素を出力するだけなら簡単ですが、配列全体をループする必要がある場合は、トラバーサルを使用する必要があります。

PHP には、for ループ、foreach ループ、while ループなど、配列を走査するためのさまざまな方法が用意されています。ここでは、foreach ループを例として、上記の多次元配列を走査する方法を示します。

まず、二重ループを使用して 2 次元配列を走査します。次のコードは、上記の配列 $arr 内のすべての都市名を出力します。

foreach ($arr as $country => $cities) {
    echo $country . '的城市有:';
    foreach ($cities as $city) {
        echo $city . ', ';
    }
    echo '<br>';
}
ログイン後にコピー

この例では、外側の foreach ループを使用して、メイン配列 $arr の各要素、つまりすべての国とCity 配列。次に、内部の foreach ループを使用して各都市配列を走査し、対応する都市名を出力します。

高次元配列の場合、対応するループ層の数を増やす必要があります。このプロセスは実際の状況に応じて柔軟に調整する必要があります。

    #一般的な多次元配列操作
多次元配列にアクセスしてトラバースする方法を理解した後、実際のアプリケーションでの一般的な操作をいくつか示します。

    多次元配列に要素を追加する: 添字を使用して、対応する位置に配列を直接挿入します。
$arr['中国'][] = '深圳'; //添加深圳到中国城市数组的末尾
ログイン後にコピー
    多次元配列内の要素を検索します。トラバーサルまたは PHP 独自の in_array() 関数を使用します。
//遍历方式
function findCity($arr, $cityName) {
    foreach ($arr as $country => $cities) {
        if (in_array($cityName, $cities)) {
            return $country;
        }
    }
    return false;
}

//in_array()方式
if (in_array('芝加哥', $arr['美国'])) {
    echo '美国有芝加哥这个城市。';
}
ログイン後にコピー
    多次元配列内の要素を変更します。対応する添字を使用して対応する要素を見つけ、それを変更します。
$arr['英国'][2] = '布莱顿'; //将英国城市数组中的第三个城市改成布莱顿
ログイン後にコピー
    多次元配列内の要素を削除する: unset() 関数を使用して、指定された添字の要素を削除します。
unset($arr['中国'][0]); //删除中国的第一个城市北京
ログイン後にコピー
    概要
この記事では、PHP の多次元配列の基本概念を紹介し、別の配列に含まれる配列にアクセスする方法と、その配列を横断する方法を示します。多次元配列を操作します。多次元配列は実際の開発では非常に一般的であり、その基本操作を習得することは効率的な PHP プログラムを作成するために非常に重要です。この記事が読者にとって役立つことを願っています。

以上がPHPで配列内の部分配列を呼び出す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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