ホームページ  >  記事  >  バックエンド開発  >  PHPでオブジェクトを配列に変換する

PHPでオブジェクトを配列に変換する

WBOY
WBOY転載
2023-09-09 17:53:08999ブラウズ

PHPでオブジェクトを配列に変換する

PHP アプリケーションでは、文字列、配列、オブジェクトなどのさまざまな形式のデータを処理します...リアルタイム アプリケーションでは、関連付けが必要になる場合があります。フォームは結果を読み取ります。 PHP オブジェクトの配列を使用して、目的の出力を取得します。

そこで、ここではPHPでphpオブジェクトを連想配列に変換する方法について説明します。

PHP のオブジェクトと連想配列とは何なのかを説明しましょう。オブジェクトはクラスのインスタンスです。つまり、1 つのクラスから多くのオブジェクトを作成できます。これは、メモリが割り当てられたクラスのサンプルにすぎません。一方、文字列をインデックスとした配列を連想配列と呼びます。これにはキーと値のペアが含まれており、値はそれぞれのキーに関連付けられています。

ここで、オブジェクトを配列に変換するさまざまな方法について説明します。

方法 1:

json_decode および json_encode テクノロジーの使用:

最初に、 json_encode() 関数は、指定された値の JSON エンコード文字列を返します。 json_decode() 関数はそれを PHP 配列に変換します。

例:

<?php
   class student {
      public function __construct($firstname, $lastname) {
         $this->firstname = $firstname;
         $this->lastname = $lastname;
      }
   }
   $myObj = new student("Alex", "Stokes");
   echo "Before conversion:".&#39;</br>&#39;;
   var_dump($myObj);
   $myArray = json_decode(json_encode($myObj), true);
   echo "After conversion:".&#39;</br>&#39;;
   var_dump($myArray);
?>

出力:

Before conversion:
object(student)#1 (2) { ["firstname"]=> string(4) "Alex" ["lastname"]=> string(6) "Stokes" }
After conversion:
array(2) { ["firstname"]=> string(4) "Alex" ["lastname"]=> string(6) "Stokes" }

説明:

ここでは、クラス Student を作成し、class () 関数で __construct を宣言します。オブジェクトの作成時に実行されます。コンストラクターは、後で new キーワードを使用してオブジェクトを作成するときに提供されるパラメーターを受け取ります。最初の var_dump() 式ではオブジェクトを出力しますが、2 番目の場合では、json_decode および json_encode テクニックを使用してオブジェクトを配列に変換します。

方法 2:

型変換テクノロジを使用してオブジェクトを配列に変換する:

型変換は、1 つのデータ型変数を別のデータ型に利用する方法です。これはデータ型を正確に変換するだけです。

<?php
   class bag {
      public function __construct( $item1, $item2, $item3){
         $this->item1 = $item1;
         $this->item2 =$item2;
         $this->item3 = $item3;
      }
   }
   $myBag = new bag("Books", "Ball", "Pens");
   echo "Before conversion :".&#39;</br>&#39;;
   var_dump($myBag);
   $myBagArray = (array)$myBag;
   echo "After conversion :".&#39;</br>&#39;;
   var_dump($myBagArray);
?>

出力:

Before conversion :
object(bag)#1 (3) { ["item1"]=> string(5) "Books" ["item2"]=> string(4) "Ball" ["item3"]=> string(4) "Pens" }
After conversion:
array(3) { ["item1"]=> string(5) "Books" ["item2"]=> string(4) "Ball" ["item3"]=> string(4) "Pens" }

説明:

ここでは、「bag」というクラスを作成し、そのクラス内で __construct () 関数を宣言しました。オブジェクトの作成時に実行されます。コンストラクターは、 new キーワードを使用してオブジェクトを作成するときに提供されるパラメーターを受け取ります。最初の var_dump() 式ではオブジェクトを出力するだけですが、2 番目の場合では、型ヒント プロシージャを使用してオブジェクトを配列にキャストします。

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

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。