2017-02-21 40 views
0

Как создать страницу на PHP, которая загружает различные биты информации из определенного каталога (т. Е. Articles /), а затем возвращает это на страницу в списке. мне нужна страница, чтобы собрать $ названия всех файлы в каталоге, сделать название в гиперссылка в этот файл и поместить их в список заказанного $ дата (последного в верх и только топ 10 последних последних) с $ описание также включено, но только ограниченное количество слов. Затем заключена ссылка «Подробнее», которая ведет к самой статье. В правой части страницы мне нужен список, в котором перечислены все файлы, а только заголовки, связанные с этими страницами, и ничего больше.Сделать список статей в 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, что я до сих пор, но не получить части мне нужно. Если я положил $ заголовок, он просто берет $ заголовок страницы статьи (страница, которая должна указывать названия файлов в другом каталоге).

<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> 

Я новичок в PHP и не знаю синтаксиса очень хорошо.

ответ

0

Рассмотрите возможность размещения переменных в формате JSON. Таким образом, вы можете легко проанализировать его с помощью PHP без необходимости eval (опасно) кода.

Пример ниже:

JSON:

{ 
    "title": "How to...", 
    "description": "Description", 
    "keywords": "yes, no, maybe, so", 
    "date": "2017-02-10", 
    "content": "<i>This is my content.</i>" 
} 

PHP:

<?php 
$articles = []; 
foreach (glob('articles/*') as $article) { 
    $content = file_get_contents($article); 
    $articles[] = json_decode($content); 
} 
print_r($articles); 

Я оставлю сортировки для вас, но это должно вас и работает. Удачи!

Источники: