PHP'de MVC'de Görünümler
Şimdi eylemlerimize görünümler ekleyelim.
Çerçevemizin kurallarına göre görünümler
/project/views/ klasöründe saklanır.
Ayrıca, çerçevemizde bir kural geçerlidir:
görünüm dosyasının adı, eylemin adıyla eşleşmeli ve
kontrolörün adıyla aynı olan bir klasörde bulunmalıdır.
Örneğin, eğer PageController kontrolörümüz varsa,
tüm görünümleri /project/views/page/ klasöründe saklanmalıdır.
Görünüm dosyasının kendisi
.php uzantısına sahip olmalıdır. Örneğin, eğer
PageController kontrolöründe act eylemi varsa,
görünümü /project/views/page/act.php konumuna yerleştirilmelidir.
Bir eyleme görünüm atamak için, bu eylemin
render metodunu çağırması ve parametre olarak görünüm adını iletmesi gerekir.
Görünüm adı, küçük harfle kontrolör adından oluşmalı,
ardından / ile ayrılmış şekilde eylem adı yazılmalıdır.
render metodunun kontrolörde uygulanmasına gerek yoktur
- üst sınıf Core\Controller'dan kalıtım yoluyla alınır. Ayrıca,
metodun doğru çalışması için işlem sonucu
return ile döndürülmelidir.
Pekala, elimizde Page kontrolörü
ve act eylemi olduğunu varsayalım. Bu eyleme
bir görünüm bağlayalım:
<?php
namespace Project\Controllers;
use Core\Controller;
class PageController extends Controller
{
public function act()
{
return $this->render('page/act');
}
}
?>
Şimdi görünümümüzün HTML koduna sahip dosyayı oluşturalım:
<div>
bu, page kontrolörünün
act eyleminin görünümüdür
</div>
Açıklanan işlemleri gerçekleştirin, ardından eyleminize adres çubuğu üzerinden erişin. Tarayıcınızda oluşturduğunuz görünümden gelen metnin göründüğünden emin olun.