Tietojen välittäminen näkymään MVC:ssä PHP:ssä
Toisen parametrin avulla metodissa render
voidaan välittää tietoja kontrollerista
näkymään. Tiedot tulee välittää
assosiatiivisena taulukkona. Tällöin
näkymässä tämän taulukon avaimista tulee
vastaavilla arvoilla varustettuja muuttujia.
Katsotaan käytännössä. Välitetään näkymäämme taulukko, joka sisältää kolme elementtiä:
<?php
namespace Project\Controllers;
use Core\Controller;
class PageController extends Controller
{
public function act()
{
return $this->render('page/act', [
'var1' => 'eee',
'var2' => 'bbb',
'var3' => 'kkk',
]);
}
}
?>
Kuten näet, taulukkomme avaimet - 'var1',
'var2' ja 'var3'. Tämä tarkoittaa,
että näkymässä ovat saatavilla sellaiset
muuttujat ja voimme näyttää niiden arvot
tarpeen mukaan HTML-koodissa. Tehdään tämä:
<div>
tämä on testikontrollerin
act-toiminnon näkymä
</div>
<ul>
<li><?php echo $var1; ?></li>
<li><?php echo $var2; ?></li>
<li><?php echo $var3; ?></li>
</ul>
Suorita kuvatut toimenpiteet ja sen jälkeen käy toiminnossamme osoiterivin kautta. Varmista, että selaimessa ilmestyy teksti luomastasi näkymästä.