Datenübergabe an die View in MVC in PHP
Mit dem zweiten Parameter der Methode render
können Daten vom Controller an die
View übergeben werden. Die Daten sollten
in Form eines assoziativen Arrays übergeben werden.
Dabei werden die Schlüssel dieses Arrays in der
View zu Variablen mit den entsprechenden Werten.
Lasst es uns in der Praxis ansehen. Wir übergeben an unsere View ein Array mit drei Elementen:
<?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',
]);
}
}
?>
Wie ihr seht, sind die Schlüssel unseres Arrays - 'var1',
'var2' und 'var3'. Das bedeutet,
dass in der View solche Variablen verfügbar sein werden
und wir ihre Werte an den gewünschten Stellen
des HTML-Codes ausgeben können. Tun wir das:
<div>
dies ist die View
der Aktion act des Controllers test
</div>
<ul>
<li><?php echo $var1; ?></li>
<li><?php echo $var2; ?></li>
<li><?php echo $var3; ?></li>
</ul>
Führt die beschriebenen Manipulationen durch und ruft dann unsere Aktion über die Adresszeile auf. Stellt sicher, dass im Browser der Text aus eurer erstellten View erscheint.