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

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

zbt
zbtオリジナル
2023-06-12 17:16:592564ブラウズ

PHP がオブジェクトを配列に変換する方法は次のとおりです: 1. 強制型変換を使用し、変換する変数の前にかっこで囲まれたターゲットの型 "(array)" を追加します; 2. "get_object_vars( )" 関数は、obj で指定されたオブジェクトで定義された属性で構成される連想配列を返します。

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

このチュートリアルの動作環境: 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 サイトの他の関連記事を参照してください。

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