Есть такое задание:
1. Создайте класс новостей для сайта.
2. Реализуйте страницу, на которой вы будете эти новости выводить используя только методы класса (к свойствам обращаться нельзя).
Я это задание сделал, но думаю, что мой код очень ужасный и не правильный, что я не так сделал?
А может надо было поместить все статьи в один json файл и вывести разметку циклом?
Не говорите мне пока про базу данных, сначала я хочу потренироваться на jsone.
index.php
PHP:
скопировать код в буфер обмена
<?PHP header('Content-Type: text/html; charset=utf-8'); class News{ public function __construct($file_get_contents){ } public function newsStr(){ return $this->file_get_contents; } public function newsArray(){ } public function newsCells(){ return $this->newsArray()['news']; } public function newsTitle(){ return $this->newsCells()['title']; } public function newsDate(){ return $this->newsCells()['date']; } public function newsAuthor(){ return $this->newsCells()['author']; } public function newsDescription(){ return $this->newsCells()['description']; } } ?> <!DOCTYPE html> <html> <head> <title>Новости сайта</title> <link rel="stylesheet" href="./style.css"> </head> <body> <div class="content"> <h2>Последние новости</h2> <div class="news"> <?PHP $news1 = new News('news1.json');?> <div class="title"><?PHP echo $news1->newsTitle()?></div> <div class="description"><?PHP echo $news1->newsDescription()?></div> <div class="date inline-block"><span>Дата:</span> <?PHP echo $news1->newsDate()?></div> <span>|</span> <div class="author inline-block"><span>Добавил</span> <?PHP echo $news1->newsAuthor()?></div> </div> <div class="news"> <?PHP $news1 = new News('news2.json');?> <div class="title"><?PHP echo $news1->newsTitle()?></div> <div class="description"><?PHP echo $news1->newsDescription()?></div> <div class="date inline-block"><span>Дата:</span> <?PHP echo $news1->newsDate()?></div> <span>|</span> <div class="author inline-block"><span>Добавил</span> <?PHP echo $news1->newsAuthor()?></div> </div> <div class="news"> <?PHP $news1 = new News('news3.json');?> <div class="title"><?PHP echo $news1->newsTitle()?></div> <div class="description"><?PHP echo $news1->newsDescription()?></div> <div class="date inline-block"><span>Дата:</span> <?PHP echo $news1->newsDate()?></div> <span>|</span> <div class="author inline-block"><span>Добавил</span> <?PHP echo $news1->newsAuthor()?></div> </div> </div> </body> </html>
css
CODE ( htmlphp):
скопировать код в буфер обмена
.content{ border: 1px solid; width: 600px; margin: 0 auto; } h2{text-align: center;} .news{ border: 3px solid orange; padding: 10px; } .title, .description{ padding-bottom: 10px; } .inline-block{ display: inline-block; vertical-align: top; font-weight: bold; }
news1.json
CODE ( htmlphp):
скопировать код в буфер обмена
{ "news": { "title": "Изобрён вечный двигатель", "date": "05.04.2017", "author": "Admin", "description": "Совсем недавно, придумали вечный двигатель, который не требует обслуживания, но в эксплуатацию его запретили, так как хотят, что бы люди постоянно мучились в рабстве" } }
news2.json
CODE ( htmlphp):
скопировать код в буфер обмена
{ "news": { "title": "Клонирование бензина", "date": "05.04.2017", "author": "Admin", "description": "Британские учённые научились клонировать бензин, теперь часть ресурсов планеты, будут спасены" } }
news3.json
CODE ( htmlphp):
скопировать код в буфер обмена
{ "news": { "title": "Современная медицина", "date": "05.04.2017", "author": "Admin", "description": "Русским учённым придуман специальный луч, который может удалить аппендицит, без вскрытия" } }
(Отредактировано автором: 08 Апреля, 2017 - 23:08:36)
|