我有一个php函数,可以让我将csv列(COLUMN NOT LINE)读入数组或字符串吗?
提前谢谢。
答案 0 :(得分:9)
$csv = array_map("str_getcsv", file("data.csv", "r"));
$header = array_shift($csv);
// Seperate the header from data
$col = array_search("Value", $header);
foreach ($csv as $row) {
$array[] = $row[$col];
}
答案 1 :(得分:5)
愿这会有所帮助。 http://www.php.net/manual/de/function.fgetcsv.php 只需抓住您想要的列的行位置。
答案 2 :(得分:2)
$arr=array();
$row = -1;
if (($handle = fopen("test.csv", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$num = count($data);
$row++;
for ($c = 0; $c < $num; $c++) {
$arr[$row][$c]= $data[$c];
}
}
fclose($handle);
}
答案 3 :(得分:2)
您应该尝试fgetcsv
方法。它允许您逐行读取文件并返回关联数组。此功能专门用于从CSV文件中读取。
在任何情况下,即使您只需处理一列,您也必须阅读每一行。