PHP将对象数组转换为键/值数组

时间:2014-01-24 06:11:07

标签: php arrays

我有一个看起来像

的php对象数组
array(3) {
  [0] object(stdClass)#153 (2) {
    ["key"] "a"
    ["val"] "2"
  }
  [1] object(stdClass)#154 (2) {
    ["key"] "b"
    ["val"] "2"
  }
  [2] object(stdClass)#155 (2) {
    ["key"] "c"
    ["val"] "5"
  }
}

我想把它变成这个

array(3) {
  ["a"] 2
  ["b"] 2
  ["c"] 5
}

我已经尝试过foreach循环的一些变体,但由于原始数组的每个值都是具有两个键的对象,所以无法弄清楚它。我该如何清理它并将其变成一个直的阵列?

3 个答案:

答案 0 :(得分:3)

$newArray=array();
foreach($yourObjects as $obj)
{
 $newArray[$obj->key]=$obj->val;
}
print_r($newArray);

答案 1 :(得分:1)

试试吧。

$array=array();
foreach($obj as $objVal)
{
 $array[$objVal->key]=$objVal->val;
}
    echo "<pre>";
     print_r($array);
    echo "</pre>";

答案 2 :(得分:0)

for loop

中的

$arrayvalues=array();
for($i=0;$i<count($yourobject);$i++)
{
 $arrayvalues[]=$yourobject[$i]->val;
}

print_r($arrayvalues);