⊗ppMVUFmAE 19 of 35 menu

MVC-ի կիրառումը PHP-ում

Եկեք նայենք սովորած ամեն ինչի միաժամանակյա կիրառմանը: Ենթադրենք, օրինակ, որ մեր կայքում կան որոշ հոդվածներ-էջեր: Մենք ցանկանում ենք կամ ցույց տալ մեկ հոդված, կամ ցույց տալ բոլոր հոդվածները: Եկեք քննարկենք, թե ինչպես դա անել մեր ֆրեյմվորքում:

Աղյուսակ տվյալների բազայում

Սկսելու համար ստեղծենք pages աղյուսակը տվյալների բազայում: Ավելացնենք id, title և text սյուները: Լրացնենք այս աղյուսակը որոշ տվյալներով PhpMyAdmin-ի միջոցով:

Մոդել

Ստեղծենք մոդել՝ մեկ գրառում ստանալու և բոլոր գրառումները ստանալու մեթոդներով.

<?php namespace Project\Models; use \Core\Model; class Page extends Model { public function getById($id) { return $this->findOne("SELECT * FROM pages WHERE id=$id"); } public function getAll() { return $this->findMany("SELECT id, title FROM pages"); } } ?>

Ռուտինգ

Ստեղծենք համապատասխան ռուտինգ.

<?php use \Core\Route; return [ new Route('/page/:id', 'page', 'one'), new Route('/pages/', 'page', 'all'), ]; ?>

Կոնտրոլլեր

Ստեղծենք կոնտրոլլեր.

<?php namespace Project\Controllers; use \Core\Controller; use \Project\Models\Page; class PageController extends Controller { public function one($params) { $page = (new Page) -> getById($params['id']); $this->title = $page['title']; return $this->render('page/one', [ 'text' => $page['text'], 'h1' => $this->title ]); } public function all() { $this->title = 'Բոլոր էջերի ցանկը'; $pages = (new Page) -> getAll(); return $this->render('page/all', [ 'pages' => $pages, 'h1' => $this->title ]); } } ?>

Ներկայացումներ

Ստեղծենք ներկայացում one մեթոդի համար.

<h1><?= $h1; ?></h1> <div id="content"> <?= $text; ?> </div>

Ստեղծենք ներկայացում all մեթոդի համար.

<h1><?= $h1; ?></h1> <div id="content"> <table> <tr> <th>id</th> <th>title</th> <th>հղում</th> </tr> <?php foreach ($pages as $page): ?> <tr> <td><?= $page['id']; ?></td> <td><?= $page['title']; ?></td> <td><a href="/page/<?= $page['id']; ?>/">էջի հղում</td> </tr> <?php endforeach; ?> </table> </div>

Գործնական առաջադրանքներ

Ենթադրենք, ձեր տվյալների բազայում կան ապրանքներ: Յուրաքանչյուր ապրանք պարունակում է անվանում, գին և քանակ, նկարագրություն: Իրականացրեք մեկ ապրանքի ցուցադրումը id-ով և բոլոր ապրանքների ցուցադրումը՝ նման տեսության մեջ արվածի:

Հայերեն
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Մենք օգտագործում ենք cookie-ներ կայքի աշխատանքի, վերլուծության և անհատականացման համար։ Տվյալների մշակումը կատարվում է համաձայն Գաղտնիության քաղաքականության։
ընդունել բոլորը կարգավորել մերժել