Sidetitel i MVC i PHP
I skabelonfilen er variablen
$title også tilgængelig, som indeholder sidetitlen.
Det er indlysende, at denne overskrift også vil være
forskellig for forskellige sider. Lad os bruge
denne variabel til dens tilsigtede formål:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title><?= $title ?></title>
</head>
<body>
...
</body>
</html>
For at indstille titlen for et bestemt
view er det nødvendigt at skrive
den i egenskaben title i controlleren:
<?php
namespace Project\Controllers;
use Core\Controller;
class TestController extends Controller
{
public function act()
{
// Indstil titlen:
$this->title = 'Handlingen act for controlleren test';
// Render viewet, og send nogle data:
return $this->render('test/act', [
'var1' => 'eee',
'var2' => 'bbb',
'var3' => 'kkk',
]);
}
}
?>
Modificer din skabelonfil og alle dine controllere så hvert view får sin egen titel vist.
Antag at controlleren Page har følgende
array:
<?php
$this->pages = [
1 => ['title'=>'page 1', 'text'=>'text 1'],
2 => ['title'=>'page 2', 'text'=>'text 2'],
3 => ['title'=>'page 3', 'text'=>'text 3'],
];
?>
Opret en handling show, som vil
vise den angivne side. Sørg for at i viewet
bliver sidens tekst fra nøglen 'text'
omsluttet af et afsnit, og teksten fra nøglen 'title'
bliver sidens titel.