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

PHPのオブジェクト配列を通常の配列に変換する方法

PHPz
PHPzオリジナル
2023-04-23 09:12:21598ブラウズ

PHP 開発では、オブジェクト配列と通常の配列の間の変換をよく使用します。特にデータを処理する場合、この変換は非常に一般的です。そこでこの記事では、PHPのオブジェクト配列を通常の配列に変換する方法を説明します。

PHP では、オブジェクト配列はオブジェクトで構成される配列を指しますが、通常の配列は基本的なデータ型で構成される配列を指します。オブジェクト配列は、通常、特に ORM フレームワークを使用する場合、データベース クエリの結果によって返されます。ORM フレームワークは、データベース内のデータをオブジェクト配列にカプセル化します。

オブジェクト配列と通常の配列間の変換は非常に簡単で、PHP の組み込み関数を使用して完了できます。以下では、変換方法をステップバイステップで説明します。

  1. PHP の組み込み関数

PHP には、オブジェクト配列と通常の配列の間の変換を完了できる 2 つの組み込み関数があります。

  • get_object_vars(): オブジェクトを配列に変換し、属性で構成される連想配列を返します。キーは属性名、値は属性値です。
  • json_decode(): JSON 形式の文字列を PHP インスタンスまたは配列に変換し、標準の PHP 配列を返します。
  1. get_object_vars() 関数の使用

get_object_vars() 関数を使用して、オブジェクト配列を通常の配列に変換できます。この関数はオブジェクト パラメータを受け取り、プロパティの連想配列を返します。以下は、get_object_vars() 関数を使用したサンプル コードです。

class Person {
    public $name = "John";
    public $age = 25;
    private $password = "123456";

    public function showDetails() {
        echo $this->name . " is " . $this->age . " years old \n";
    }
}

$person1 = new Person();
$person2 = new Person();
$person2->name = "Jessica";
$person2->age = 30;

$personArray1 = get_object_vars($person1);
$personArray2 = get_object_vars($person2);

print_r($personArray1);
print_r($personArray2);

出力:

Array
(
    [name] => John
    [age] => 25
)

Array
(
    [name] => Jessica
    [age] => 30
)

ご覧のとおり、get_object_vars() 関数を使用した後、オブジェクト配列を正常に変換しました。通常の配列。

  1. json_decode() 関数の使用

get_object_vars() 関数の使用に加えて、json_decode() 関数を使用してオブジェクト配列を通常の配列。この関数は JSON 文字列パラメータを受け取り、標準の PHP 配列を返します。以下は、json_decode() 関数を使用したサンプル コードです。

class Person {
    public $name = "John";
    public $age = 25;
    private $password = "123456";

    public function showDetails() {
        echo $this->name . " is " . $this->age . " years old \n";
    }
}

$person1 = new Person();
$person2 = new Person();
$person2->name = "Jessica";
$person2->age = 30;

$json1 = json_encode($person1);
$json2 = json_encode($person2);

$personArray1 = json_decode($json1, true);
$personArray2 = json_decode($json2, true);

print_r($personArray1);
print_r($personArray2);

出力:

Array
(
    [name] => John
    [age] => 25
)

Array
(
    [name] => Jessica
    [age] => 30
)

json_decode() 関数を使用した後、オブジェクト配列を通常の配列に変換することもできました。

  1. 概要

PHP オブジェクト配列から通常の配列への変換は非常に簡単で、get_object_vars() 関数または json_decode() 関数を使用するだけで完了します。 。 get_object_vars() 関数を使用すると、オブジェクトを配列に直接変換できますが、 json_decode() 関数を使用すると、まずオブジェクトを JSON 形式の文字列に変換してから、その文字列を配列に変換する必要があります。どの方法を使用しても、データを処理する際のニーズを満たすことができます。

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

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