PHP - 选择有限的csv行

时间:2013-10-07 20:42:26

标签: php

我是PHP的新手,我正在尝试在网页中显示CSV中的一些内容。我能够成功显示值。我需要找到所有列的最小值和最大值,以便我可以包含一个滑块,用户可以使用该滑块选择一个范围。这是我必须找到所有列的最小值和最大值的代码。

$total_columns = 0;
$handle1 = fopen('demo.csv', 'r');
while (false !== ($row = fgetcsv($handle1, 1000, ','))) {
    0 === $total_columns and $total_columns = count($row);
    $i = 1;
    while (++$i <= $total_columns) {
         $data1[$i][] = (int) $row[$i - 1];
     }
}

$i = 0;
while (++$i <= $total_columns) {
    $_SESSION["min-column-$i"] = min($data1[$i]);
    $_SESSION["max-column-$i"] = max($data1[$i]);
}

使用上面的代码,我实现了一个用于范围选择的滑块功能。选择此范围后,我只需要显示满足范围的行。例如,

  • a1 1 2 3
  • a2 3 4 5
  • a3 8 9 10

如果我有第1列的滑块(min是1,max是8),如果我选择范围值为8,我只需要显示a3行。我的输出应该是,

  • a3 8 9 10

这可以用PHP吗?

1 个答案:

答案 0 :(得分:0)

请记住,PHP是所有服务器端代码,因此您可以在此处选择一些选项。

  1. 处理您的数据并为隐藏所有数据的每一行创建一个div。将范围存储在javascript中并编写一个方法来检查这些范围内的用户值并隐藏/显示相应的行。
  2. 在选择范围值时,对PHP脚本进行ajax调用,该脚本将确定该行并将其返回。然后,您将其显示在一个结果div中。
  3. 采用与#2类似的方法,但将数据发布回执行相同操作并显示结果的脚本。
  4. 我会查看#1,因为您必须处理所有CSV数据以确定范围。 #2和#3都要求你第二次重新处理数据才能得到结果。