【问题标题】:Printing rows from CSV file in reverse order in php在php中以相反的顺序从CSV文件打印行
【发布时间】:2011-12-08 01:17:35
【问题描述】:

所以我一直在谷歌上搜索并尝试使用不同的 PHP 函数,但到目前为止我还没有完成我需要的。基本上我有一个 .CSV 文件,其中包含死亡玩家的日志以及他们何时死亡。我想要的是 php 从文件的最后一行开始读取文件并反向到顶部。这是我目前拥有的代码:

if (($handle = fopen("deadlog.csv", "r")) !== FALSE) {
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        echo "<tr>";
        echo "<td> $data[0] </td><td> $data[1] </td><td> $data[2] </td><td> $data[7]   </td>";
        echo "</tr>";
}
    fclose($handle);
}

【问题讨论】:

    标签: php csv fopen fgetcsv


    【解决方案1】:

    一种方法是使用信息保留变量。这样您就可以添加它,而不是使用 *append*s 的 echo

    $out = '';
    if (($handle = fopen("deadlog.csv", "r")) !== FALSE) {
        while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
            $out = "<tr>".$out;
            $out =  "<td> $data[0] </td><td> $data[1] </td><td> $data[2] </td><td> $data[7]   </td>".$out;
            echo "</tr>";
    }
        fclose($handle);
    }
    echo $out;
    

    【讨论】:

    • 哇,非常完美。我花了好几分钟盯着它弄清楚为什么它起作用了:p 非常感谢,非常感谢
    • 我不确定这与echo 的性能和内存使用情况相比如何。如果有人知道,请发表评论。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-09
    • 2021-08-23
    • 1970-01-01
    • 2022-08-24
    • 2012-12-20
    相关资源
    最近更新 更多