Php 填充对象';属性与数组?
我想要获取一个数组,并使用该数组的值来使用数组的键名填充对象的属性。像这样:Php 填充对象';属性与数组?,php,Php,我想要获取一个数组,并使用该数组的值来使用数组的键名填充对象的属性。像这样: $a=array('property1' => 1, 'property2' => 2); $o=new Obj(); $o->populate($a); class Obj { function Populate($array) { //?? } } 在此之后,我现在有: $o->property1==1 $o->property2==2 我
$a=array('property1' => 1, 'property2' => 2);
$o=new Obj();
$o->populate($a);
class Obj
{
function Populate($array)
{
//??
}
}
在此之后,我现在有:
$o->property1==1
$o->property2==2
我该怎么做呢
foreach ($a as $key => $value) {
$o->$key = $value;
}
但是,用于声明数组的语法无效。您需要这样做:
$a = array('property1' => 1, 'property2' => 2);
如果您不关心对象的类,您可以这样做(给您一个stdClass
的实例):
嗯,吃点像这样的怎么样
class Obj
{
var properties = array();
function Populate($array)
{
this->properties = $array;
}
}
然后你可以说:
$o->properties['property1'] == 1
...
在数组上也是Woops,这是我的新语言,它是PHP和python的合并:p
$o->properties['property1'] == 1
...