PHP配列の値を配列に変換する

PHPz
リリース: 2023-05-24 14:17:09
オリジナル
718 人が閲覧しました

PHP の開発プロセスでは、配列内の値を再度配列に変換する必要がある状況によく遭遇します。たとえば、リクエストのパラメータには、同じパラメータ名に対応する値が複数存在する場合があり、この場合、それらの値を配列に変換して処理する必要があります。ここでは、PHP 配列の値を配列に変換するいくつかの方法を示します。

方法 1:explode() 関数

まず、以下に示すように、PHP でexplode() 関数を使用して文字列を配列に変換できます。このようにして、カンマ区切りの文字列を配列に変換でき、出力結果は次のようになります:

$str = "apple,banana,orange";
$arr = explode(",", $str);
print_r($arr);
ログイン後にコピー

ただし、配列内の値がすでに配列である場合、explode() 関数を使用すると、それぞれが変換されます。値を配列の要素に挿入すると、不正確な結果が生じます。したがって、このメソッドは、配列内のすべての値が文字列である場合にのみ機能します。

方法 2: array_map() 関数

PHP の array_map() 関数を無名関数と組み合わせて使用​​すると、配列内の値を配列に変換できます。コードは次のとおりです。次のようになります。

Array
(
    [0] => apple
    [1] => banana
    [2] => orange
)
ログイン後にコピー

このようにして、配列内の指定された文字で区切られたすべての文字列を部分配列に変換できます。出力結果は次のとおりです:

$arr = array("1,2,3", "4,5,6", "7,8,9");
$arr = array_map(function($item) {
    return explode(",", $item);
}, $arr);
print_r($arr);
ログイン後にコピー

方法 3: json_decode() 関数

最後に、PHP で json_decode() 関数を使用して、JSON 形式の文字列を配列に変換できます。コードは次のとおりです。

Array
(
    [0] => Array
        (
            [0] => 1
            [1] => 2
            [2] => 3
        )

    [1] => Array
        (
            [0] => 4
            [1] => 5
            [2] => 6
        )

    [2] => Array
        (
            [0] => 7
            [1] => 8
            [2] => 9
        )

)
ログイン後にコピー

この方法で、JSON 形式の文字列を配列に変換できます。出力結果は次のとおりです。

$json_str = '["apple","banana","orange"]';
$arr = json_decode($json_str, true);
print_r($arr);
ログイン後にコピー

もちろん、配列内の値が既に JSON 形式の文字列である場合は、このメソッドを変換に使用することもできます。

概要

上記の方法により、PHP 配列の値を次の処理ステップの配列に変換できます。ただし、配列内の値がすでに配列である場合は、上記の方法を使用して再変換しないでください。そうしないと、間違った結果が得られます。

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

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