【发布时间】:2013-07-12 12:25:26
【问题描述】:
我在 PHP 方面不是特别有经验,但我一直在尝试为朋友的网站创建一个基本博客。我认为目前最简单的做法是使用静态文件,因此我使用 XML 来存储博客条目。我已经设法完美地设置它,因为我可以根据需要显示帖子。但是,我现在想要一个导航栏,它允许我根据日期选择帖子,就像大多数博客一样。这些文件被简单地命名为 1.xml、2.xml、3.xml 等,所以我可以遍历它们。这是显示数据数组如何组织的代码(它是数组中的数组,因此第一级将等同于文件名中的数字+1)。所以我在弄清楚如何从这些数据中创建导航栏(ul、li 等)时遇到了很多麻烦。大概我需要几年是独一无二的,然后是几年中的几个月是独一无二的,而且随着日子的推移,我可以让每个标题(显然是一个链接)都在正确的日期下。
$data = array();
for ($i = 1; $i <= $numberOfPosts; $i++) {
$filename = './blogentries/' . $i . '.xml';
if (!file_exists($filename))
throw new Exception();
$blogentry = simplexml_load_file($filename);
$title = $blogentry->title;
$dateD = $blogentry->date->day;
$dateM = $blogentry->date->month;
$dateY = $blogentry->date->year;
if (strlen($dateY) === 2) $dateY = '20' . $dateY;
$entryParagraphs = $blogentry->entry->children();
$data[] = array(
(string)$title,
array(
(string)$dateY,
(string)$dateM,
(string)$dateD
),
$entryParagraphs
);
}
感谢您提供的任何帮助。对不起,如果我没有像我可能的那样雄辩,我希望你能原谅我的相对无知!
【问题讨论】:
-
I'm not especially experienced in PHP, but I've been trying to create a basic blog for a friend's website.使用wordpress -
为什么你使用 xml 你可以使用 mysql 或者 nay rdbms
-
@hek2mgl 好点,但我也很想学习如何为自己做这个。我意识到到目前为止我可能已经搞砸了(或者我可能没有?),但如果有人能给我任何关于如何解决这个问题的指示,非常感谢!
-
你这样做是为了取得好成绩还是为了自学?如果你想做一件严肃的事情,你应该学习面向对象的 PHP 并考虑拥有一个数据库,或者正如@hek2mgl 建议的那样,不要重新发明轮子。否则它可能是一个很好的项目(即使在这种情况下,学习我首先提到的两件事也可能很好)。否则,导航栏有什么问题?因为我不明白你的要求缺少什么。
-
自己做博客软件没问题。但是请不要在没有专业人士检查整个代码是否存在安全问题的情况下将其放到网上。