我正在写这个文件:
$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
问题:如果文件中有多个游戏标题,则会在表格中打印标题代替客户名称。
答案 0 :(得分:2)
考虑以json或xml格式存储数据。然后,当你读出它时,你可以使用内置的php函数来正确读取它。
json_encode
和json_decode
是您的朋友。
编辑:以上建议仍然适用,但我刚注意到2个不同的文件方面。
此解决方案不起作用,因为您要两次添加数据。要么清理将数据添加到文件的方式(完全构建字符串,然后将其写入文件),要么切换到数据库。数据库旨在更加优雅地处理这类问题。