读取和写入PHP文件,帮助格式化?

时间:2011-03-22 18:49:10

标签: php string file

我正在写这个文件:

    $myFile = "purchases.txt";
    $fh = fopen($myFile, 'a');
    $stringData = $title ."|". $id;
        fwrite ($fh, $stringData."|");
    fclose ($fh);

在另一个文件中,我正在写名字:

  $name = $_POST['name'];
    $last = $_POST['lastname'];
    $name = $name ." ". $last;
    $myFile = "purchases.txt";
    $fh = fopen($myFile, 'a');
    $stringData = $name;
    fwrite ($fh, $stringData."\r\n");
    fclose ($fh);

回应内容:

foreach($lines as $theline ) {
            list($title, $id, $name) = split('\|',$theline); 
                    echo "
                        <tr><td><h3>Title</h3></td>
                        <td><h3>ID</h3></td>
                        <td><h3>Name</h3></td>
                        <td><h3>Date</h3></td>
                         <tr><td><h4>$title</h4></td>
                         <td><h4>$id</h4></td>
                         <td><h4>$name</h4></td>
                         <td><h4>".date('l \\t\h\e jS')."</h4></td></tr>
                         ";                  
                     }

文件如下所示:

 Uncharted 3 |1| Deus Ex |2| Metal Gear Solid |3|Lib drfsdgf

问题:如果文件中有多个游戏标题,则会在表格中打印标题代替客户名称。

1 个答案:

答案 0 :(得分:2)

考虑以json或xml格式存储数据。然后,当你读出它时,你可以使用内置的php函数来正确读取它。

json_encodejson_decode是您的朋友。

编辑:以上建议仍然适用,但我刚注意到2个不同的文件方面。

此解决方案不起作用,因为您要两次添加数据。要么清理将数据添加到文件的方式(完全构建字符串,然后将其写入文件),要么切换到数据库。数据库旨在更加优雅地处理这类问题。