Mehmet

WFN Üye
Konular
1,851
Mesajlar
1,852
Çözüm
0
Ticaret Puanı
0
Üyelik
1 Ay 6 Gün
Konum
YurtDışı
Web Sitesi
Var
Alanı
Google Adsense
1/1
Konu sahibi

PHP Laravel nedir?​


Laravel, PHP ile web uygulamaları ve API’ler geliştirmek için kullanılan açık kaynaklı bir web framework’üdür. PHP dilinin yerine geçmez; PHP kodunu düzenli bir uygulama yapısı içinde yazmak için yönlendirme, veritabanı erişimi, oturum yönetimi, doğrulama, şablon oluşturma ve komut satırı araçları gibi hazır bileşenler sunar.

Laravel ile blog, yönetim paneli, üyelik sistemi, e-ticaret altyapısı veya mobil uygulamaların kullanacağı bir API geliştirilebilir. Laravel bir CMS değildir; WordPress gibi hazır içerik yönetim sistemi kurmaz. Uygulamanın iş kuralları ve veri modeli geliştirici tarafından oluşturulur.

Laravel nasıl çalışır?​


Bir kullanıcı uygulamaya istek gönderdiğinde Laravel bu isteği tanımlı bir rotaya yönlendirir. Rota doğrudan yanıt verebilir veya isteği bir controller sınıfına aktarabilir. Controller gerekli işlemi yapar, model veya Eloquent ORM aracılığıyla veritabanına erişir ve sonunda bir HTML görünümü, JSON yanıtı ya da yönlendirme döndürür.

Laravel’in sık kullanılan parçaları şunlardır:

  • Routes: URL’leri controller veya işlem kodlarıyla eşleştirir.
  • Controllers: İstekleri karşılayan ve uygulama akışını yöneten sınıflardır.
  • Eloquent: Veritabanı tablolarıyla PHP modelleri üzerinden çalışmayı sağlar.
  • Blade: Dinamik HTML sayfaları hazırlamak için kullanılan şablon sistemidir.
  • Migration: Veritabanı tablolarının yapısını kodla tanımlamaya ve değiştirmeye yarar.
  • Middleware: İstek ve yanıt akışında kimlik doğrulama gibi ara kontrolleri uygular.
  • Artisan: Migration çalıştırma, kod üretme ve yerel geliştirme sunucusunu başlatma gibi uygulama görevlerinde kullanılan komut satırı aracıdır.

Plain PHP ile de aynı uygulamalar yazılabilir; Laravel, tekrar eden altyapı işlerini ortak bir yapı içinde toplamayı amaçlar.

Somut örnek: Basit bir Laravel projesi​


Varsayalım ki yalnızca “Merhaba” yanıtı veren bir uygulama oluşturmak istiyorsunuz. PHP ve Composer kurulu bir geliştirme ortamında temel proje şu şekilde hazırlanır:

  1. Komut satırında composer create-project laravel/laravel ornek-uygulama komutunu çalıştırın. Komut tamamlanamıyorsa önce Composer’ın çalıştığını ve PHP’nin seçilen Laravel sürümüyle uyumlu olduğunu kontrol edin.
  2. Proje klasörüne geçin: cd ornek-uygulama.
  3. Geliştirme sunucusunu başlatın: php artisan serve. Başarılı durumda Artisan, yerel geliştirme sunucusunun başlatıldığını bildirir. Komut bulunamıyorsa terminalin proje klasöründe olduğunuzu ve bağımlılıkların kurulduğunu kontrol edin.
  4. routes/web.php dosyasında Route facade içe aktarımının bulunduğunu kontrol edip aşağıdaki rotayı ekleyin. use Illuminate\Support\Facades\Route; satırı zaten varsa ikinci kez eklemeyin:

Kod:
Route::get('/merhaba', function () {
    return 'Merhaba Laravel';
});

Geliştirme sunucusunun gösterdiği yerel adreste /merhaba yolunu açtığınızda “Merhaba Laravel” yanıtını görürsünüz. Bu örnek, tarayıcı isteğinin rota üzerinden Laravel koduna ulaşıp metin yanıtına dönüştüğünü gösterir. Gerçek uygulamada bu kodu büyütmek yerine iş mantığını controller’a, veriyi modele ve HTML’i Blade görünümüne taşımak daha sağlıklıdır.

Ne zaman Laravel tercih edilmeli?​


Karar verirken uygulamanın boyutunu ve ihtiyaç duyduğu altyapıyı değerlendirin:

İhtiyaçUygun yaklaşımNeden
Tek dosyalık küçük işlemPlain PHP yeterli olabilirFramework kurulumu gereksiz yük oluşturabilir
Üyelik, yönetim paneli ve veritabanıLaravel uygun bir adaydırRota, doğrulama, ORM ve middleware yapıları birlikte kullanılabilir
Mobil veya harici istemci için APILaravel ile API tasarlanabilirİstek, doğrulama ve JSON yanıt akışı düzenlenebilir

Laravel seçildiğinde proje yapısını baştan düzenli kurun. Controller’ları aşırı büyütmeyin, doğrulama kurallarını istek akışının uygun bölümünde uygulayın ve veritabanı değişikliklerini elle sunucuya müdahale etmek yerine migration dosyalarıyla takip edin. Ayrıca geliştirme ve üretim ortamlarını birbirinden ayırın; ortama bağlı ayarları yapılandırma üzerinden yönetin. Gerçek parolaları içeren .env dosyasını sürüm kontrolüne eklemeyin; üretimde web kökünü projenin public dizinine yönlendirin.

Sık yapılan hatalar​


Laravel’i PHP alternatifi sanmak: Laravel, PHP üzerinde çalışan bir framework’tür. PHP temelleri bilinmeden yalnızca Artisan komutlarını öğrenmek, hata ayıklamayı zorlaştırır.

Her kodu route dosyasına yazmak: Küçük denemelerde mümkün olsa da büyüyen uygulamada controller, model ve view sorumluluklarını ayırmamak bakım maliyetini artırır.

Veritabanı ayarını kontrol etmeden migration çalıştırmak: Bağlantı bilgileri, veritabanının varlığı ve kullanıcının yetkileri doğru değilse migration başarısız olur. Hata mesajı bağlantı mı yoksa tablo yapısı mı kaynaklı olduğunu ayırmak için ilk kontrol noktasıdır.

Geliştirme sunucusunu üretimde kullanmak: php artisan serve geliştirme ve test içindir. Üretimde uygun PHP çalışma ortamı, web sunucusu ve uygulama yapılandırması ayrıca planlanmalıdır.

Sık sorulan sorular​


Laravel öğrenmek için önce PHP bilmek gerekir mi?​

Temel PHP sözdizimi, sınıflar, diziler, fonksiyonlar, hata ayıklama ve HTTP mantığı bilinirse Laravel’i anlamak çok daha kolay olur. Framework bu temellerin yerine geçmez.

Laravel kullanmak uygulamayı kendiliğinden güvenli yapar mı?​

Hayır. Hazır doğrulama, yetkilendirme ve güvenlik mekanizmalarının doğru uygulanması gerekir. Hassas veriyi koruma, bağımlılıkları güncel tutma ve her işlemin erişim yetkisini denetleme geliştiricinin sorumluluğundadır.

Mevcut plain PHP projesi doğrudan Laravel’e çevrilir mi?​

Genellikle tek komutla çevrilmez. Mevcut işlevler analiz edilir; rotalar, veritabanı erişimi, görünümler ve kimlik doğrulama Laravel’in yapısına parça parça taşınır. Küçük projelerde yeniden yapılandırma yerine mevcut yapıyı sürdürmek daha az maliyetli olabilir.
 

Sende şimdi bize katılmak ister misin?

Kayıt ol

Bize katılım kolay ve ücretsizdir!

Konuyu görüntüleyenler

Bu konuyu şu anda görüntüleyen üye bulunmuyor.