ホームページ >バックエンド開発 >PHPの問題 >PHPで文字列を配列およびオブジェクト配列に変換する方法

PHPで文字列を配列およびオブジェクト配列に変換する方法

PHPz
PHPzオリジナル
2023-04-11 09:11:43441ブラウズ

PHP では、操作のために文字列を配列またはオブジェクト配列に変換する必要があることがよくありますが、このプロセスは非常に簡単です。この記事では、PHPを使って文字列を配列やオブジェクト配列に変換する方法を紹介します。

1. 文字列を配列に変換する

PHP の組み込み関数explode()を使用すると、指定した区切り文字に従って文字列を配列に変換できるのでとても便利です。サンプル コードは次のとおりです。

$str = "张三,李四,王五";
$arr = explode(",", $str);
print_r($arr);

出力結果は次のとおりです。

Array
(
    [0] => 张三
    [1] => 李四
    [2] => 王五
)

上記のコードでは、区切り文字として「,」を使用して、3 つの名前を含む文字列を配列に変換しています。そして出力します。

2. 文字列をオブジェクト配列に変換する

文字列をオブジェクト配列に変換する必要がある場合は、PHP の組み込み関数 json_decode() を使用できます。この関数は、JSON 形式の文字列を PHP オブジェクトまたは配列に変換することができ、非常に便利です。サンプルコードは次のとおりです。

$json_str = '[{"name":"张三","age":"20"},{"name":"李四","age":"25"},{"name":"王五","age":"30"}]';
$obj_arr = json_decode($json_str);
print_r($obj_arr);

出力結果は次のとおりです。

Array
(
    [0] => stdClass Object
        (
            [name] => 张三
            [age] => 20
        )

    [1] => stdClass Object
        (
            [name] => 李四
            [age] => 25
        )

    [2] => stdClass Object
        (
            [name] => 王五
            [age] => 30
        )

)

上記のコードでは、3 つの名前と年齢を含む JSON 形式の文字列をオブジェクト配列に変換し、それを出力します。

3. オブジェクト配列を文字列に変換する

PHP には、オブジェクト配列を JSON 形式の文字列に変換する組み込み関数 json_encode() が用意されています。オブジェクトの配列を関数に渡して文字列に変換するだけです。サンプル コードは次のとおりです。

$person1 = array("name"=>"张三","age"=>"20");
$person2 = array("name"=>"李四","age"=>"25");
$person3 = array("name"=>"王五","age"=>"30");
$obj_arr = array($person1, $person2, $person3);
$json_str = json_encode($obj_arr);
echo $json_str;

出力結果は次のとおりです。

[{"name":"张三","age":"20"},{"name":"李四","age":"25"},{"name":"王五","age":"30"}]

上記のコードでは、名前と年齢を含む 3 つの配列をオブジェクト配列に形成し、 json_encode()関数でJSON形式の文字列に変換して出力します。

4. まとめ

上記の紹介を通じて、PHP を使用して文字列を配列またはオブジェクト配列に変換する方法を学びました。文字列の解析または処理が必要な一部のシナリオでは、配列またはオブジェクト配列への変換が非常に便利です。読者も日々の開発業務でこれらの手法を頻繁に使用することになると思います。

以上がPHPで文字列を配列およびオブジェクト配列に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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