Я пытаюсь получить данные из .CSV , отсортировать их в массиве (используя PHP), выбрать в нем определенные значения, создать новый массив для этого выбора и закодировать его в объект json, который можно использовать с ajax.
С помощью этого кода я могу получить почти то, что хочу.
$CSV_url = '../fichier-csv/commande.csv'; // CSV file
$csv["data"] = array_map('str_getcsv', file($CSV_url)); // to PHP array
array_shift($csv["data"]); // remove first line (headers)
$jsonData = json_encode($csv); // to Json
Файл CSV содержит около 16 категорий данных в строке, но мне нужно только 4 из них в моем окончательном json.
Я застрял с этим результатом. Если я печатаю до json_encode ($csv
), я получаю хороший массив, но у меня возникают проблемы с выбором нужных данных и созданием нового массива с ним (именно так, я думаю, это должно быть сделано, но я новичок, может есть более простой способ) Выведенный Json также должен быть отсортирован в порядке возрастания значения [0] каждого массива. Вот начало массивов, которые я получаю (378 из них для обработки):
Array (
[data] => Array
(
[0] => Array
(
[0] => 100120148
[1] => 1.0000
[2] => 7.4200
[3] => 2.4700
[4] => 4.9100
[5] => 0.0000
[6] => 14.8000
[7] => 0.3000
[8] => marie
[9] => jardin
[10] => 40 rue mazé
[11] => 87400
[12] => 066825197
[13] => [email protected]
[14] => 1
[15] => [email protected]
)
[1] => Array
(
[0] => 100120162
[1] => 1.0000
[2] => 45.7500
[3] => 10.8000
[4] => 8.2500
[5] => 0.0000
[6] => 64.8000
[7] => 2.0000
[8] => __
[9] => Lucien fizon
[10] => 56 impasse pazarre
[11] => 25000
[12] => 0649851473
[13] => [email protected]
[14] => 4
[15] => [email protected]
)
Как мне получить значения 0, 8, 9 и 12 каждого подмассива и создать с ним новый массив, чтобы я мог кодировать этот желаемый массив в Json?
Спасибо.
sort( $csv['data'] );
22.03.2020