【问题标题】:How to display data from text file in table? - Fixed [closed]如何在表格中显示文本文件中的数据? - 固定[关闭]
【发布时间】:2013-09-15 12:32:58
【问题描述】:

我有如下文本文件:

3|1003|Deig|12" Deig|bakki|1208.00|2.00|96.00|0.00|0.00|0.00|0.00|98.00|90.95|7.05|8516.40
3|1011|Deig|12" Ponn|bakki|1450.00|2.00|49.00|0.00|0.00|0.00|0.00|51.00|44.62|6.38|9243.75
3|1004|Deig|15" Deig|bakki|1450.00|25.00|170.00|0.00|0.00|0.00|0.00|195.00|175.75|19.25|27912.50

如何在表格中显示数据(可以吗??)每个“|”分隔单元格,此文本文件可以有 20 多行。

【问题讨论】:

  • 先看fgetcsv()函数;或SPLFileObject's 等效项 - 您的previous question 的答案为您完成了一半的工作
  • 作为一个快速简单的解决方案,看起来你应该能够循环行用“”替换管道并将每一行包装在一个“ " 。 lineWithRepplacement 取决于数据中发生的管道变化
  • 说实话我什至不知道从哪里开始!!你能给我一些提示吗?我可以在网站上显示它,但我不知道如何在表格中完成此操作。如何计算文本文件中的行数并将它们添加到表中。谢谢,我将尝试阅读有关这些命令的更多信息:-)
  • @Shimpu:先生,你有成为help vampire的危险。
  • 我不想成为帮助吸血鬼——虽然我真的很喜欢这些生物(吸血鬼):-)。但是刚刚开始冒险编程,我真的需要一些帮助来完成这个项目。顺便说一句:谢谢大家这么快的回复,我正在接受测试:-) THX

标签: php html html-table


【解决方案1】:

使用explode() 之类的简单方法将每一行分成单元格,并适当地设置主题。

示例代码:

$rows = file();
print '<table>';
foreach($rows as $row) {
  print '<tr>';
  $cells = explode('|', $row);
  foreach($cells as $cell) {
    print '<td>'.$cell.'</td>';
  }
  print '</tr>';
}
print '</table>';

【讨论】:

  • 为什么使用explode()而不是从文件中读取为分隔值文件?
  • 为什么不简单地echo '&lt;tr&gt;&lt;td&gt;'.str_replace('|','&lt;/td&gt;&lt;td&gt;', $row).'&lt;/td&gt;&lt;/tr&gt;';
  • Thx hexblot -- 正是我所需要的 :-) 顺便说一句:我对你的知识印象深刻——意识到我在这个领域是多么愚蠢。你能给我一些好书吗——适合开始(只是请不要对我大喊大叫——如果这是一个愚蠢的问题)再次感谢
  • @Christoph:因为上面的内容更容易理解。你的解决方案同样好:)
  • @Shimpu:恐怕我不能推荐任何书,因为我主要是从个案或其他开发人员那里学到的。我的正规教育是电子学:)
【解决方案2】:

这应该让你开始:

$handle = fopen("file.txt", "r");
if ($handle) {
    while (($line = fgets($handle)) !== false) {
        $array = explode('|', trim($line));
        foreach($array as $td) {
            echo '<td>'.$td.'</td>';
        }
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-06-13
    • 1970-01-01
    • 1970-01-01
    • 2015-11-12
    • 1970-01-01
    • 2012-05-30
    • 2015-07-05
    相关资源
    最近更新 更多