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

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

藏色散人
藏色散人オリジナル
2019-01-22 15:19:354247ブラウズ

オブジェクトはクラスのインスタンスです。これは、メモリが割り当てられたクラスのサンプルにすぎません。配列は、類似した型の 1 つ以上の値を 1 つの名前で格納するデータ構造ですが、連想配列は単純な PHP 配列とは異なります。文字列インデックスを含む配列は連想配列と呼ばれます。要素値を線形インデックス順序で保存するのではなく、キー値に関連付けます。

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

方法 1:

json_decode メソッドと json_encode メソッドの使用: json_decode 関数は、JSON エンコードされた文字列を受け取り、それを PHP 変数 json_encode に変換します。一方、指定された値の JSON エンコード文字列を返します。

構文:

$myArray = json_decode(json_encode($object), true);

例:

<?php 
class sample { 
      
    /* 成员变量 */
    var $var1; 
    var $var2; 
      
    function __construct( $par1, $par2 )  
    { 
        $this->var1 = $par1; 
        $this->var2 = $par2; 
    } 
} 
  
//创建的对象 
$myObj = new sample(1000, "second"); 
echo "转换前: \n"; 
var_dump($myObj); 
  
// 将对象转换为关联数组
$myArray = json_decode(json_encode($myObj), true); 
echo "转换后: \n"; 
var_dump($myArray); 
?>

出力:

转换前: 
object(sample)#1 (2) {
  ["var1"]=>
  int(1000)
  ["var2"]=>
  string(6) "second"
}
转换后: 
array(2) {
  ["var1"]=>
  int(1000)
  ["var2"]=>
  string(6) "second"
}

方法 2:

オブジェクトから配列への型変換: 型変換は、データ型変数を別のデータ型に変換する方法であり、データ型の明示的な変換にすぎません。 PHP でサポートされている型変換ルールを使用して、PHP オブジェクトを配列に変換できます。

構文:

$myArray = (array) $myObj;

例:

<?php 
class bag { 
      
    /* 成员变量 */
    var $item1; 
    var $item2; 
    var $item3; 
      
    function __construct( $par1, $par2, $par3)  
    { 
        $this->item1 = $par1; 
        $this->item2 = $par2; 
        $this->item3 = $par3; 
    } 
} 
  
// 创建myBag对象 
$myBag = new bag("Mobile", "Charger", "Cable"); 
echo "转换前: \n"; 
var_dump($myBag); 
  
// 将对象转换为数组
$myBagArray = (array)$myBag; 
echo "转换后: \n"; 
var_dump($myBagArray); 
?>

出力:

转换前: 
object(bag)#1 (3) {
  ["item1"]=>
  string(6) "Mobile"
  ["item2"]=>
  string(7) "Charger"
  ["item3"]=>
  string(5) "Cable"
}
转换后: 
array(3) {
  ["item1"]=>
  string(6) "Mobile"
  ["item2"]=>
  string(7) "Charger"
  ["item3"]=>
  string(5) "Cable"
}

この記事は、PHP でオブジェクトを連想配列に変換する方法について説明します。紹介もとても簡単なので、困っている友達のお役に立てれば幸いです!

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

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