Удалить имена из Json Encode - PullRequest
0 голосов
/ 05 мая 2018

В настоящее время мой JSON выводит из следующего PHP:

$data['products'][] = array(
                    'product_id'  => $result['product_id'],
                    'thumb'       => $image,
                    'name'        => $result['name'],
                    'description' => $desc,
                    'price'       => $price,
                    'special'     => $special,
                    'tax'         => $tax,  
                );

И с этим ($products = json_encode ($data['products']);) выдает следующее:

[{"product_id":"28",
"thumb":"x",
"name":"name",
"description":"abc",
"price":"$123.00",
"special":false,
"tax":"$100.00"}]

Можно ли удалить имена без изменения php "$data['products'][] = array();"? Я пытаюсь достичь:

 ["28",
   "x",
   "name",
   "abc",
   "$123.00",
   false,
   "$100.00"]

Впервые использую кодировку JSON, так что любой другой совет будет потрясающим!

Ответы [ 2 ]

0 голосов
/ 05 мая 2018

Вы можете использовать array_values, чтобы получить значения первой / единственной записи в $data['products'], а затем кодировать это:

$json = json_encode(array_values($data['products'][0]));

Что производит

["28","x","name","abc","$123.00",false,"$100.00"]

Живой пример

0 голосов
/ 05 мая 2018

Вы можете использовать array_map для цикла по вашему массиву и использовать array_values в качестве функции обратного вызова для преобразования ассоциативного массива в простой массив

$arr = array_map('array_values', $data['products'] );
$products = json_encode ($arr);

Это приведет к:

[["28","x","name","abc","$123.00",false,"$100.00"]] 

Живой пример

...