使用PHP从文本文件创建表

时间:2015-04-25 15:20:27

标签: php text-files tabular sentence

我需要创建一个带有文本文件边框的表格(每当有人填写表格时,此文本文件会更新。一行,一个人):

Herard|TRO789|Suzuki|France|Gendolfina|Fresko|food|500|2015-04-25 14:40
Bob|MGA789|Mercedes|Latvia|Polaris|Dread|parts|1000|2015-04-26 16:15

我已经创建了一个脚本,可以单独读取每个单词,但不知道如何将它们放到桌面上:

<?php
$file = fopen("info.txt", "r") or die("Unable to open file!");
while (!feof($file)){   
    $data = fgets($file); 
    list($name, $number, $type, $country, $company, $gcompany, $supply, $weight, $datetime) = explode("|", $data);
    }
    fclose($failas);
?>

所以我需要一个脚本,它可以读取文本文件并创建一个与文本文件具有相同行数的表。

2 个答案:

答案 0 :(得分:2)

使用str_replace|符号替换为HTML表格单元格分隔符。

<?php
echo '<table border="1">';
$file = fopen("info.txt", "r") or die("Unable to open file!");
while (!feof($file)){   
    $data = fgets($file); 
    echo "<tr><td>" . str_replace('|','</td><td>',$data) . '</td></tr>';
}
echo '</table>';
fclose($file);
?>

答案 1 :(得分:0)

此解决方案不干净但有效。你也可以使用explode创建一个数组而不是很多变量:

<table>   
    <?php
        $file = fopen("info.txt", "r") or die("Unable to open file!");
        while (!feof($file)){   
            $data = fgets($file); 
            list($name, $number, $type, $country, $company, $gcompany, $supply, $weight, $datetime) = explode("|", $data);
    ?> 
    <tr>
        <td><?=$name ?></td>
        <td><?=$number ?></td>
        ...
    </tr>
    <?php
        }
        fclose($failas);
   ?>
</table>