phpでの配列とオブジェクトの相互変換
1、強制的にオブジェクトを配列に変換する
変換結果は次の例で示します.
print_でr印刷対象
強制変換後の配列
方法2:stdClassで配列をオブジェクトに変換する
stdClass変換後:
stdClassはPHPの1つのベースクラスで、すべてのクラスはほとんどこのクラスを継承しているので、いつでもnewされ、この変数をobjectにすることができます.同時に、この基類にはもう一つの特殊な場所があり、方法がない.
3、一つのクラス:ArrayObject、配列を直接オブジェクトに変換できる
結果:
$arr = (array)$obj;
変換結果は次の例で示します.
print_でr印刷対象
stdClass Object
(
[name] => main
[text] =>
[parrent] =>
[content] =>
[props] => Array
(
)
[inner] => Array
(
)
[level] => 0
)
強制変換後の配列
Array
(
[name] => main
[text] =>
[parrent] =>
[content] =>
[props] => Array
(
)
[inner] => Array
(
)
[level] => 0
)
方法2:stdClassで配列をオブジェクトに変換する
$arr = array();
$arr['a'] = 1;
$arr['b'] = 2;
$arr['c'] = 3;
stdClass変換後:
$object = new StdClass;
$object->a = 1;
$object->b = 2;
$object->c = 3;
stdClassはPHPの1つのベースクラスで、すべてのクラスはほとんどこのクラスを継承しているので、いつでもnewされ、この変数をobjectにすることができます.同時に、この基類にはもう一つの特殊な場所があり、方法がない.
3、一つのクラス:ArrayObject、配列を直接オブジェクトに変換できる
$array = array('1' => 'one',
'2' => 'two',
'3' => 'three');
$arrayobject = new ArrayObject($array);
var_dump($arrayobject);
結果:
object(ArrayObject)#1 (3) {
[1]=>
string(3) "one"
[2]=>
string(3) "two"
[3]=>
string(5) "three"
}