PHP ile Basit MVC Yapısı Nasıl Oluşturulur

  • Mayıs 23, 2023
  • PHP
No Comments

MVC (Model-View-Controller), web uygulamalarının düzenli ve yapılandırılmış bir şekilde geliştirilmesine olanak sağlayan popüler bir tasarım desenidir. PHP ile basit bir MVC yapısı oluşturmak, kodunuzun daha okunabilir, sürdürülebilir ve yeniden kullanılabilir olmasını sağlayabilir. Bu yazıda, adım adım bir MVC yapısı oluşturmayı öğreneceksiniz.

Adım 1: Dosya Yapısının Oluşturulması İlk adımda, projenizin kök dizininde birkaç klasör oluşturmanız gerekiyor. Bu klasörler: app, controllers, models ve views. Ayrıca, kök dizinde index.php adında bir dosya da oluşturmanız gerekiyor. Dosya yapısı şu şekilde olacak:

– app
– controllers
– models
– views
– index.php

Adım 2: Temel Controller Sınıfının Oluşturulması controllers klasörü altında Controller.php adında bir dosya oluşturun. Bu dosyada, temel bir Controller sınıfını tanımlayacağız. Bu sınıf, tüm diğer kontrolcülerin genişlemesi için temel işlevleri sağlayacaktır. İşte Controller.php dosyasındaki örnek kod:

 

<?php
class Controller {
// Controller sınıfının yapıcı metodu
public function __construct() {
// Constructor kodu buraya yazılabilir
}

// Örnek bir eylem metodu
public function action() {
// Eylem kodu buraya yazılabilir
}
}
?>

 

Adım 3: Temel Model Sınıfının Oluşturulması models klasörü altında Model.php adında bir dosya oluşturun. Bu dosyada, temel bir Model sınıfını tanımlayacağız. Bu sınıf, tüm diğer modellerin genişlemesi için temel işlevleri sağlayacaktır. İşte Model.php dosyasındaki örnek kod:

 

<?php
class Model {
// Model sınıfının yapıcı metodu
public function __construct() {
// Constructor kodu buraya yazılabilir
}

// Örnek bir sorgu metodu
public function query() {
// Sorgu kodu buraya yazılabilir
}
}
?>

 

4: Temel View Dosyalarının Oluşturulması views klasörü altında header.php, footer.php ve home.php adında üç adet view dosyası oluşturun. header.php ve footer.php, tüm sayfalarda kullanılacak olan başlık ve altbilgi gibi ortak HTML kodlarını içerecektir. home.php ise ana sayfa görünümünü temsil edecektir. İşte bu view dosyalarındaki örnek kodlar:

header.php:

<!DOCTYPE html>
<html>
<head>
<title>Basit MVC Yapısı</title>
</head>
<body>

 

footer.php:

</body>
</html>

 

home.php

<h1>Hoş Geldiniz!</h1>
<p>Bu, basit bir MVC yapısı örneğidir.</p>

 

Adım 5: Ana Kontrolcü ve Rota Tanımlama controllers klasörü altında HomeController.php adında bir dosya oluşturun. Bu dosyada, ana kontrolcü olan HomeController sınıfını tanımlayacağız. Ayrıca, gelen isteklere göre doğru kontrolcüyü ve eylemi çalıştırmak için basit bir rota tanımlayacağız. İşte HomeController.php dosyasındaki örnek kod:

<?php
class HomeController extends Controller {
public function __construct() {
parent::__construct();
}

public function index() {
// Ana sayfayı yükleme
include ‘views/header.php’;
include ‘views/home.php’;
include ‘views/footer.php’;
}
}
?>

 

Ayrıca, index.php dosyasını aşağıdaki şekilde güncelleyin:

<?php
// Gerekli dosyaları dahil etme
include ‘app/controllers/Controller.php’;
include ‘app/controllers/HomeController.php’;

// Gelen isteğe göre doğru kontrolcüyü ve eylemi çalıştırma
$controller = new HomeController();

// Varsayılan eylem, ana sayfa
$controller->index();
?>

Artık basit bir MVC yapınız var! index.php dosyasını çalıştırdığınızda, HomeController‘ın index() yöntemi çalışacak ve ana sayfayı görüntüleyecektir. Bu yapıyı daha da geliştirerek farklı kontrolcüler, modeller ve görünümler ekleyebilirsiniz.

Sonuç olarak, PHP ile basit bir MVC yapısı oluşturmak, kodunuzun daha organize olmasını ve bakımını daha kolay hale getirmesini sağlar. Bu örnekte, temel bir yapı sağlandı, ancak gerçek projelerde daha karmaşık bir yapıya ihtiyaç duyabilirsiniz.

Kerem Özgüven, 2000 yılında php programlama geliştirmeye başladı. O günden bu yana bir çok yazılım projesine katkıda bulundu ve fullstack geliştirici olarak kariyerini sürdürüyor. Kullanıcı arayüzleri, web servislerinin tasarımı, veri yapıları, sunucu yönetimi ve web uygulamaları gibi birçok alanda uzmanlaşmıştır. Tasarladığı çözümler kullanıcı dostu tasarımlardan, güvenli ve kolay kullanılan arayüzlere kadar uzanmaktadır. Projelerde öncelikle en iyi sonuçların elde edilmesini kolaylaştıran modern yöntemler kullanmaktadır.Her zaman projelerinin başarısı için gerekli olan tüm araştırmaları yapmaya yönelik bir yaklaşım sergilemektedir.

Daha Fazla Makale

Hepsi

Leave a Comment