Php从数组变为对象

Php从数组变为对象,php,function,woocommerce,Php,Function,Woocommerce,我现在在woocommerce 3.0上使用woocommerce 2.6,$item->get_items的输出已从数组更改为对象 我想通过键名将对象std类转换为数组以获取数据。下面是自定义woocommerce 3.x vardump的输出 请帮我做这个 [1]=> object(stdClass)#18913 (3) { ["id"]=> int(3944) ["key"]=> string(5) "Vuxen" ["value"]=> s

我现在在woocommerce 3.0上使用woocommerce 2.6,
$item->get_items
的输出已从数组更改为对象

我想通过键名将对象std类转换为数组以获取数据。下面是自定义woocommerce 3.x vardump的输出

请帮我做这个

[1]=>
object(stdClass)#18913 (3) {
  ["id"]=>
  int(3944)
  ["key"]=>
  string(5) "Vuxen"
  ["value"]=>
  string(15) "2 (4 800,00 Kr)"
}
[2]=>
object(stdClass)#18912 (3) {
  ["id"]=>
  int(3945)
  ["key"]=>
  string(18) "Totalt biljettpris"
  ["value"]=>
  string(11) "4 800,00 Kr"
}
[3]=>
object(stdClass)#18911 (3) {
  ["id"]=>
  int(3946)
  ["key"]=>
  string(30) "jrp_name_adult_ordinary_7day_1"
  ["value"]=>
  string(26) "undefined/kjhjksh/jdhfjshk"
}
[4]=>
object(stdClass)#18910 (3) {
  ["id"]=>
  int(3947)
  ["key"]=>
  string(13) "Nationality_1"
  ["value"]=>
  string(25) "Nej, ej på japanskt pass"
}
[5]=>
object(stdClass)#18909 (3) {
  ["id"]=>
  int(3948)
  ["key"]=>
  string(30) "jrp_name_adult_ordinary_7day_2"
  ["value"]=>
  string(33) "undefined/jhdsfjjhdkjs/jkdshfjshj"
}
[6]=>
object(stdClass)#18908 (3) {
  ["id"]=>
  int(3949)
  ["key"]=>
  string(13) "Nationality_2"
  ["value"]=>
  string(21) "Ja, på japanskt pass"
}
[7]=>
object(stdClass)#18907 (3) {
  ["id"]=>
  int(3950)
  ["key"]=>
  string(11) "Avresedatum"
  ["value"]=>
  string(10) "30/09/2017"
}
[8]=>
object(stdClass)#18906 (3) {
  ["id"]=>
  int(3951)
  ["key"]=>
  string(12) "Sätt kryss:"
  ["value"]=>
  string(65) "Jag har förstått villkoren för användning av Japan Rail Pass."
}
[9]=>
object(stdClass)#18905 (3) {
  ["id"]=>
  int(3952)
  ["key"]=>
  string(12) "Sätt kryss:"
  ["value"]=>
  string(88) "Jag förstår att det är mitt ansvar att se till att jag har korrekt visum i mitt pass."
}
[10]=>
object(stdClass)#18904 (3) {
  ["id"]=>
  int(3953)
  ["key"]=>
  string(12) "Sätt kryss:"
  ["value"]=>
  string(88) "Jag har förstått villkoren för användning av Japan Rail Pass som japansk medborgare."
}
[11]=>
object(stdClass)#18903 (3) {
  ["id"]=>
  int(3954)
  ["key"]=>
  string(12) "Sätt kryss:"
  ["value"]=>
  string(84) "Jag förstår att det är mitt ansvar att se till att jag har korrekt dokumentation."
}
取自

取自

你可以这样试试

$array = json_decode(json_encode($item), true);
你可以这样试试

$array = json_decode(json_encode($item), true);
使用以下命令:

$itemsArray = array_map(function($v) {
    return (array)$v;
}, $item->get_items);
使用以下命令:

$itemsArray = array_map(function($v) {
    return (array)$v;
}, $item->get_items);

调用RESTAPI时,可以传递一个带有参数的数组。如果将此参数“return_as_array”设置为true,则它们将值作为数组返回

$options = array('debug' => false,
            'return_as_array' => true,
            'validate_url' => false,
            'timeout' => 30,
            'ssl_verify' => false);

new WC_API_Client($url, $consumer_key, $consumer_secret, $options);

调用RESTAPI时,可以传递一个带有参数的数组。如果将此参数“return_as_array”设置为true,则它们将值作为数组返回

$options = array('debug' => false,
            'return_as_array' => true,
            'validate_url' => false,
            'timeout' => 30,
            'ssl_verify' => false);

new WC_API_Client($url, $consumer_key, $consumer_secret, $options);

您可以使用以下代码将所有对象获取到数组中。如果多次找到对象中的键,它将按键名创建唯一数组,并将所有对象中的所有值获取到唯一键中

$order = wc_get_order($order_id);
foreach ($order->get_items() as $item_id => $item_obj) {
    $item_data = $item_obj->get_data();
    foreach ($item_data as $key => $object) {
    }
    for($m=0;$m<count($object);$m++) {
        $new_array[$object[$m]->key][$m] = $object[$m]->value;
    }
}
echo "<pre>";var_dump($new_array);echo "</pre>";
$order=wc\u get\u order($order\u id);
foreach($order->get\u items()作为$item\u id=>$item\u obj){
$item_data=$item_obj->get_data();
foreach($key=>$object形式的项\数据){
}
对于($m=0;$mkey][$m]=$object[$m]->value;
}
}
echo“”;var_dump($new_数组);echo“”;

您可以使用以下代码将所有对象获取到数组中。如果多次找到对象中的键,它将按键名创建唯一数组,并将所有对象中的所有值获取到唯一键中

$order = wc_get_order($order_id);
foreach ($order->get_items() as $item_id => $item_obj) {
    $item_data = $item_obj->get_data();
    foreach ($item_data as $key => $object) {
    }
    for($m=0;$m<count($object);$m++) {
        $new_array[$object[$m]->key][$m] = $object[$m]->value;
    }
}
echo "<pre>";var_dump($new_array);echo "</pre>";
$order=wc\u get\u order($order\u id);
foreach($order->get\u items()作为$item\u id=>$item\u obj){
$item_data=$item_obj->get_data();
foreach($key=>$object形式的项\数据){
}
对于($m=0;$mkey][$m]=$object[$m]->value;
}
}
echo“”;var_dump($new_数组);echo“”;