PHP がオブジェクトを配列に変換する方法は次のとおりです: 1. 強制型変換を使用し、変換する変数の前にかっこで囲まれたターゲットの型 "(array)" を追加します; 2. "get_object_vars( )" 関数は、obj で指定されたオブジェクトで定義された属性で構成される連想配列を返します。
このチュートリアルの動作環境: Windows10 システム、php8.1.3 バージョン、DELL G3 コンピューター。
php オブジェクトを配列に変換するメソッド
方法 1: 強制型変換を使用します。変換する変数の前に括弧で囲みます。ターゲットの型"(array)"
例: 配列へのオブジェクトのキャスト
class foo { function do_foo() { echo "Doing foo."; } } $bar = new foo; $bar->do_foo(); print_r((array)$bar); ?>
出力:
Doing foo.Array ( )
拡張情報:
PHP データ型は、許可される変換は次のとおりです:
(int)、(integer): 整数に変換されます
(float)、(double)、(real): 浮動小数点型に変換されます
(文字列): 文字列
(bool)、(boolean): ブール型に変換
(array): 配列に変換
( object): に変換object
メソッド 2: get_object_vars() 関数を使用する
get_object_vars — オブジェクト属性で構成される連想配列を返します。構文形式:
get_object_vars ( object $obj )
obj で指定されたオブジェクトで定義された属性で構成される連想配列を返します。
例:
class Point2D { var $x, $y; var $label; function Point2D($x, $y) { $this->x = $x; $this->y = $y; } function setLabel($label) { $this->label = $label; } function getPoint() { return array("x" => $this->x, "y" => $this->y, "label" => $this->label); } } // "$label" is declared but not defined $p1 = new Point2D(1.233, 3.445); print_r(get_object_vars($p1)); $p1->setLabel("point #1"); print_r(get_object_vars($p1)); ?>
出力:
Array ( [x] => 1.233 [y] => 3.445 [label] => ) Array ( [x] => 1.233 [y] => 3.445 [label] => point #1 )
以上がPHPでオブジェクトを配列に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。