MVC atvaizdai PHP
Dabar pridėkime mūsų veiksmams atvaizdus.
Pagal mūsų karkaso taisykles atvaizdai
saugomi aplanke /project/views/.
Be to, mūsų karkase veikia
sutartis: atvaizdo failo pavadinimas turi
sutapti su veiksmo pavadinimu ir būti patalpintas
aplanke su tokiu pat pavadinimu kaip valdiklio pavadinimas.
Pavyzdžiui, jei mes turime valdiklį PageController,
tai visi jo atvaizdai turi būti saugomi
aplanke /project/views/page/. Pats
atvaizdo failas turi turėti plėtinį
.php. Pavyzdžiui, jei valdiklyje
PageController bus veiksmas act,
tai jo atvaizdas turi būti patalpintas
/project/views/page/act.php.
Kad priskirtumėte atvaizdą kokiam nors
veiksmui, šis veiksmas turi iškviesti metodą
render, perduodant jam parametrą atvaizdo
pavadinimą. Atvaizdo pavadinimas turi būti sudarytas
iš valdiklio pavadinimo mažąja raide, po
kurios per / bus užrašytas veiksmo
pavadinimas.
Metodo render nereikia realizuoti
valdiklyje - jis paveldimas iš tėvinės
klasės Core\Controller. Be to,
kad veiktų teisingai, metodo darbo rezultatas
turi būti grąžintas per return.
Taigi, tarkime, mes turime valdiklį Page
su veiksmu act. Priskirkime
šiam veiksmui atvaizdą:
<?php
namespace Project\Controllers;
use Core\Controller;
class PageController extends Controller
{
public function act()
{
return $this->render('page/act');
}
}
?>
Dabar sukurkime failą su mūsų atvaizdo HTML kodu:
<div>
šis atvaizdas
veiksmo act valdiklio page
</div>
Atlikite aprašytas manipuliacias, o po to kreipkitės į mūsų veiksmą per adreso eilutę. Įsitikinkite, kad naršyklėje pasirodys tekstas iš jūsų sukurtos atvaizdo.