簡體   English   中英

PHP在CSV列中查找唯一數據

[英]PHP Finding Unique Data in A CSV column

我正在嘗試在csv的“制作”列中收集所有唯一項。 基本上,這是所有拖曳式汽車清單中的品牌。 CSV中有一個“制作”字段。

我嘗試了以下解決方案:

$towFileString = file_get_contents("the link would go here");
file_put_contents('tow-data.csv', $towFileString);

$csvArray = array_map('str_getcsv', file('tow-data.csv'));

//echo count($csvArray);

$allMakes = array_column($csvArray, 'Make');
$uniqueMakes = array_unique($allMakes);

echo count($uniqueMakes);

我可以看到$ csvArray正在創建和填充(它收集了數千個項目),但是當我嘗試回顯$ uniqueMakes的計數時,我得到0。

我在哪里流浪?

<?php

$csv =<<<CSV
manufacturer,model
ford,escort
delorean,dmc-12
ford,capri
vw,beetle
CSV;

$csv     = array_map('str_getcsv', explode("\n",$csv));
$headers = array_shift($csv);

$manufacturer_idx = array_search('manufacturer', $headers);
$manufacturers    = [];
foreach($csv as $v) {
    $manufacturers[] = $v[$manufacturer_idx];
}

$manufacturers = array_unique($manufacturers);
sort($manufacturers);
var_export($manufacturers);

輸出:

array (
0 => 'delorean',
1 => 'ford',
2 => 'vw',
)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM