我正在尝试仅显示特定列中包含特定单词的行。基本上我只想在显示列中显示“是”的行。
First_Name, Last_Name, Display
Kevin, Smith, yes
Jack, White, yes
Joe, Schmo, no
我一直在尝试使用fgetcsv& amp;来自其他答案和来自php.net的str_getcsv但到目前为止没有任何工作。
它没有做任何事情,但这是我目前的代码:
$csv = fopen('file.csv', 'r');
$array = fgetcsv($csv);
foreach ($array as $result) {
if ($array[2] == "yes") {
print ($result);
}
}
答案 0 :(得分:0)
让我们看看the documentation for fgetcsv()
:
从文件指针获取行并解析CSV字段
fgetcsv
读取单行,而不是整个文件。你可以通过将它放在while
循环中来保持阅读行,直到你到达文件的末尾,例如。
<?php
$csv = fopen('file.csv', 'r');
// Keep looping as long as we get a new $row
while ($row = fgetcsv($csv)) {
if ($row[2] == "yes") {
// We can't just echo $row because it's an array
//
// Instead, let's join the fields with a comma
echo implode(',', $row);
echo "\n";
}
}
// Don't forget to close the file!
fclose($csv);
答案 1 :(得分:0)
您应该使用数据表。 https://datatables.net/examples/basic_init/zero_configuration.html
这就是我处理文本文件的方式。但要小心,对于大量数据(> 10000行),你应该在deferRender选项中使用loog。 https://datatables.net/reference/option/deferRender&lt; - 需要JSON数据。