用PHP制作文章列表
如何在PHP中创建一个页面,从特定目录(即articles/)加载各种信息位,然后将其返回到列表中的页面。 我需要该页面来收集目录中所有文件的$title,使标题成为指向该文件的超链接,并将其放入按$date排序的列表中(最新的,在顶部,仅列出前10名最新的),还包括$description,但字数有限。然后以一个“阅读更多”链接结束,该链接指向文章本身。在页面的右侧,我想要一个列出所有文件的列表,但只列出链接到这些页面的标题,没有其他内容 目录中的所有文件看起来都与此类似:用PHP制作文章列表,php,list,hyperlink,file-get-contents,page-title,Php,List,Hyperlink,File Get Contents,Page Title,如何在PHP中创建一个页面,从特定目录(即articles/)加载各种信息位,然后将其返回到列表中的页面。 我需要该页面来收集目录中所有文件的$title,使标题成为指向该文件的超链接,并将其放入按$date排序的列表中(最新的,在顶部,仅列出前10名最新的),还包括$description,但字数有限。然后以一个“阅读更多”链接结束,该链接指向文章本身。在页面的右侧,我想要一个列出所有文件的列表,但只列出链接到这些页面的标题,没有其他内容 目录中的所有文件看起来都与此类似: <?php
<?php
$title = "How to...";
$description = "Description";
$keywords = "yes, no, maybe, so";
$date = "2017-02-10";
$content = "<i>This is my content.</i>";
include 'layout/article_template.php';
?>
这是我到目前为止拥有的PHP,但它没有得到我需要的部分。如果我在其中放入$title,它只接受文章列表页面的$title(该页面应该列出另一个目录中的文件标题)
我是PHP新手,不太懂语法。考虑将变量设置为JSON格式。这样,您就可以轻松地用PHP解析它,而不必(危险地)编写代码 下面是一个例子: JSON:
{
“标题”:“如何……”,
“说明”:“说明”,
“关键词”:“是,不是,也许,所以”,
“日期”:“2017-02-10”,
“内容”:“这是我的内容。”
}
PHP:
<div id="content">
<?php
$dir_open = opendir('articles/');
while(false !== ($filename = readdir($dir_open))){
$dirArray[]=$filename;
if($filename != "." && $filename != ".."){
$link = "<a href='./$filename'> $filename </a><br />";
echo $link;
}
}
closedir($dir_open);
$indexCount=count($dirArray);
sort($dirArray);
?>
</div>
{
"title": "How to...",
"description": "Description",
"keywords": "yes, no, maybe, so",
"date": "2017-02-10",
"content": "<i>This is my content.</i>"
}
<?php
$articles = [];
foreach (glob('articles/*') as $article) {
$content = file_get_contents($article);
$articles[] = json_decode($content);
}
print_r($articles);