显示.php文件的内容而不是数组中的变量名称

时间:2014-11-17 21:07:00

标签: php html arrays

我试图在我的网站上制作一个简单的新闻Feed,它会显示目录中的最新3个帖子。

我有一个充满.php文件的目录,里面各有一些html和一个带有整页链接的简短故事。

在我的主页上我有

<?php
$news = scandir('news_posts', SCANDIR_SORT_DESCENDING);
include($news[0]);
include($news[1]);
include($news[2]);
?>

哪个不起作用。我已经尝试过print_r,var_export,echo,我设法做的最好就是打印变量的名称(所以14.11.14.php,15.11,14.php等)而不是.php文件中的html内容。

这可能非常简单,但对于.php来说是新手,我有点迷失,似乎无法通过搜索引擎找到合适的答案。

1 个答案:

答案 0 :(得分:0)

scandir只返回文件名而不是路径,这似乎是news_posts/。试试glob

$news = glob('news_posts/*.*');

或继续使用scandir

include('news_posts/' . $news[0]);

我会使用glob,因为您只能返回文件,只返回具有特定扩展名的文件。

sort($news, SORT_DESC);

foreach($news as $file) {
    include($file);
}

glob并按时间排序:

array_multisort(array_map('filemtime', $news = glob('news_posts/*.*')), 
                SORT_DESC, $news);