将 json 数据更改为简单的 php 数组

change json data to simple php array

我想将一些 JSON 对象数据 更改为 PHP 数组

数组我有:-

'line_items' => 
  array (
    0 => '{"title":"ADIDAS | KID\'S STAN SMITH - 1 / white","product_id":1395863355492,"price":90,"variant_id":12486979027044,"quantity":2,"applied_discount":{"title":"DISCOUNT"}}',
    1 => '{"title":"ADIDAS | CLASSIC BACKPACK - OS / black","product_id":1395863945316,"price":70,"variant_id":12486982500452,"quantity":5,"applied_discount":{"title":"DISCOUNT","value_type":"fixed_amount","value":"10.00","amount":"50.00"}}',
    2 => '{"title":"Activity Auto - small / white","product_id":1396022444132,"price":14.99,"variant_id":12488662089828,"quantity":4,"applied_discount":{"title":"DISCOUNT"}}',
  ),

预期数组:

'line_items' => 
  array (
    0 => 
    array (
      'title' => 'ADIDAS | KID\'S STAN SMITH - 1 / white',
      'product_id' => '1395863355492',
      'price' => '90',
      'variant_id' => '12486979027044',
      'quantity' => '2',
      'applied_discount' => 
      array (
        'title' => 'DISCOUNT',
      ),
    ),
    1 => 
    array (
      'title' => 'ADIDAS | CLASSIC BACKPACK - OS / black',
      'product_id' => '1395863945316',
      'price' => '70',
      'variant_id' => '12486982500452',
      'quantity' => '5',
      'applied_discount' => 
      array (
        'title' => 'DISCOUNT',
        'value_type' => 'fixed_amount',
        'value' => '10.00',
        'amount' => '50.00',
      ),
    ),
    2 => 
    array (
      'title' => 'Activity Auto - small / white',
      'product_id' => '1396022444132',
      'price' => '14.99',
      'variant_id' => '12488662089828',
      'quantity' => '4',
      'applied_discount' => 
      array (
        'title' => 'DISCOUNT',
      ),
    ),
  ),

试试这个:

for ($i = 0; $i < count($arr_you_gave['line_items']); ++$i) {
    $arr_you_gave['line_items'][$i] = json_decode($arr_you_gave['line_items'][$i], true);
}

或者您不想使用任何循环...

$corp_array = '[' . implode(',', $arr_you_gave['line_items']) . ']';
$arr_you_gave['line_items'] = json_decode($corp_array, true);