【发布时间】:2015-11-25 15:25:27
【问题描述】:
我必须用 PHP 创建一个博客站点。
目前,我将每个新博客条目的文本保存在带有标题、实际日期和 ID 的 .txt 文件中。
只要 - 这就是问题所在 - 我不输入回车,它就可以很好地工作。每次我按“Enter”键时,条目都不会正确显示,因为它将新行标识为新条目。
你会如何解决这个问题?谢谢你的回答
这是 PHP 代码
<?php
if (isset($_POST["newpost"])){
$datum = date('d.m.Y H:i:s');
$file2 = file('./data/blog/'.$userid.'.txt');
$titel = $_POST['titel'];
$body = $_POST['body'];
foreach ($file2 as $filee)
{
$blog_details = explode(';', $filee);
$id_stored = $blog_details[0];
}
if (!empty($id_stored))
{
$id = $id_stored +1;
} else
{
$id = 1;
}
$file = fopen('./data/blog/'.$userid.'.txt', 'a+');
$text = $id . ";" . $datum . ";" . $titel . ";" . $body . PHP_EOL;
if(fwrite($file, $text))
{
echo "Dein Blogeintrag wurde gespeichert.";
fclose ($file);
}
else
{
echo "fail!";
}
}
?>
【问题讨论】:
-
考虑使用数据库存储博客文章。如果您真的想使用文件,我会将每个帖子存储在单独的文件中或创建一些“自定义”格式并使用 3 个换行符来分隔帖子。
-
感谢您的评论。不幸的是,我必须将其存储在文本或 csv 文件中,并且不能使用 sql db。我会试试你的提示,使用 3 个换行符而不是 1 个