Yeni Başlayanlar İçin CakePHP Eğitimi: CakePHP Çerçevesi Nedir?

CakePHP Eğitim Özeti

Bu CakePHP eğitiminde tüm temel kavramları sıfırdan öğreneceğiz. Bu eğitim CakePHP'nin tanımını, Geçmişini, Özelliklerini, Klasör yapısını ve yapılandırmasını ve CakePHP çerçevesinin nasıl çalıştığına dair kısa ayrıntıları kapsar.

CakePHP nedir?

CakePHP'nin PHP'de oluşturulmuş web uygulamalarının hızlı geliştirilmesi ve bakımı için açık kaynaklı bir çerçevedir. Daha az kodla PHP web uygulamalarının kolay ve basit bir şekilde oluşturulmasına yardımcı olan MVC mimarisi kavramına dayanmaktadır. CakePHP ayrıca iş mantığını veri katmanından ve sunum katmanından ayırmanıza yardımcı olur.

CakePHP Çerçevesini neden kullanmalıyım?

CakePHP çerçevesini kullanmanın başlıca faydaları/artıları şunlardır:

  • Cake PHP açık ara en hızlı web geliştirme platformlarından biridir.
  • CakePHP, geliştiricilerin veritabanı ve SQL sorguları üzerinde gelişmiş kontrol sahibi olmalarını sağlar.
  • Kullanıcıların ortam esnekliğini hızla kaybetmeden sağlam web uygulamaları geliştirmelerine yardımcı olur.
  • Için destek PostgreSQL, SQLite, MySQL, ADODB için PEAR-DB, bir veritabanı soyutlama kitaplığı.
  • Arama Motoru Dostu URL'leri kolaylaştırır
  • Uygulamayı güvenli kılan giriş doğrulama ve temizleme araçları gibi özellikler sağlayın.
  • Tanıdık PHP sözdizimi ile şablon oluşturma

CakePHP'nin Tarihçesi

Şimdi bu CakePHP eğitiminde CakePHP çerçevesinin geçmişini ele alacağız:

Yıl Dönüm noktası
2005 CakePHP, 15 Nisan 2005'te Michal Tatarynowicz tarafından geliştirildi.
2005 CakePHP bunu MIT lisansı altında yayınladı ve topluluk geliştiricilerinin kullanımına açtı.
2005 Larry E Masters baş geliştirici olarak görevi devraldı.
2006 Sürüm 1.0 yayınlandı
2011 Sürüm 2 yayınlandı
2014 Önceki sürümleri tamamen iptal eden Sürüm 3 yayınlandı.
2016 Sürüm 3.3.3. CakePHP'nin birçok gelişmiş özelliği ile piyasaya sürüldü.
2019 Sürüm 3.7.9 yayımlanan son sürümdür
2021 CakePHP çekirdek ekibi CakePHP 4.2.2'nin hemen kullanılabilirliğini duyurdu

CakePHP'nin Özellikleri

CakePHP'nin önemli özellikleri şunlardır.

  • Aktif, arkadaş canlısı topluluk
  • MVC mimarisi
  • Yerleşik doğrulama
  • Apache yapılandırmasının bir kısmı veya hiç dahil edilmeden herhangi bir web sitesi dizininden çalışır.
  • Şablon Motoru
  • önbelleğe alma Operaleri
  • Kolay CRUD Veritabanı Etkileşimleri.
  • Yerleşik Doğrulama
  • E-posta, Çerez, Güvenlik, Oturum ve İstek gibi Bileşenleri Yönetme
  • Şunun için Yardımcıları Görüntüle: JavaSenaryo, Ajax, HTML Formları ve Daha Fazlası

CakePHP- Klasör Yapısı

Şimdi bu CakePHP çerçeve eğitiminde CakePHP klasör yapısını öğreneceğiz.

Aşağıda CakePHP'nin klasör yapısı verilmiştir:

Dosya Tanım
Testler Bu klasör uygulamanız için test senaryolarını içerir.
tmp Temp klasörü geçici verileri saklar.
Satıcı Bu klasör CakePHP'yi saklamanıza yardımcı olur ve diğer uygulama bağımlılıkları yüklenir.
Webroot MKS Webroot herkesin erişebilmesini istediğiniz tüm dosyaları saklar.
Çöp kutusu Bin klasörü Cake konsolunun yürütülebilir dosyalarını içerir.
Kayıtlar Günlük yapılandırmanıza bağlı olan günlük dosyalarınızı içerir.
Yapılandırma Config klasörü CakePHP'nin kullandığı konfigürasyon dosyalarını saklar
eklentiler Bu klasör uygulamaya yönelik Eklentileri içerir. uygulamanızın kullandığı Eklentilerin depolandığı yerdir.
src Uygulamanızı yönetmek için bir konsol görevi ve komutları içerir.

Yerel Ayar Uluslararasılaştırma için dize dosyalarını saklar.

Model Uygulamanızın tablolarını, varlıklarını ve davranışlarını içerir.

CakePHP'nin Yapılandırması

CakePHP varsayılan olarak tek bir yapılandırma dosyasıyla birlikte gelir. Ayrıca gereksinimlerinize göre değiştirmenize de olanak tanır. Bunun için “config” adında bir klasör verilmiştir.

Değişken ismi Tanım
Debug CakePHP hata ayıklama çıktısını değiştirmenizi sağlar.
Uygulama.ad alanı Altındaki uygulama sınıflarını bulmanıza yardımcı olur.
Uygulama.baseUrl'si Apache'nin mod_rewrite özelliğini CakePHP ile kullanmak istemediğinizde bu anahtar kelimenin açıklamasını kaldırın.
Uygulama kodlaması Bu komut, uygulamanızın hangi kodlamayı kullandığını tanımlamanıza olanak tanır.
Uygulama tabanı Bu, uygulamanın bulunduğu temel dizindir. Yanlışsa bu otomatik olarak algılanacaktır.
App.fullBaseUrl Nitelikli alan adı
Uygulama.webroot Bu bir webroot dizinidir.
Uygulama.wwwRoot Web köküne giden dosya yolu.
App.jsBaseUrl Genel js dizininin yolu.
Uygulama.yolları Sınıf tabanlı olmayan kaynaklar için yolları yapılandırın.
App.cssBaseUrl Webroot altındaki genel css dizinine giden bir web yoludur.
Güvenlik.tuz Karma işleminde kullanılan rastgele bir dizedir.
Varlık.zaman damgası Bu değişken, uygun yardımcıları kullanırken bir zaman damgası eklemenizi sağlar.

Cake- PHP adlandırma kuralları

Cake, konfigürasyon yerine gelenek fikrini takip ediyor. Adlandırma kuralı yöntemi, web uygulamasının çalışmasını düzenlemenize olanak tanır. Bu yöntemde isimde birden fazla kelimenin dosya isimlendirmesinde “_” ile ayrılması ve sınıf isimlendirmesinde deve hallerinin olması gerekmektedir.

MVC parçaları aşağıda verilen sözdizimine uymalıdır:

Dosya Adı Sınıf adı Temel Sınıf Adı Konum
Model Dosya Adı
Tablo adının .php uzantılı tekil biçimi; örneğin: order.php
Bir Camel vakasındaki dosya adı, örneğin: Sipariş Uygulama Modeli /app/modeller
kontrolör .php uzantılı tablename_controller, örneğin: ordcrs_controllcr.php Tablo adına eklenen Denetleyici, örneğin: OrdcrsController Uygulama Denetleyicisi /app/denetleyiciler
Görüntüle Denetleyicideki .ctp uzantılı eylem adı, örneğin: add.ctp Sınıf yok; bir görünüm c HTML etiketleri ve PHP. ' /app/vuews/denetleyici adı

Veritabanları Yapılandırması

CakePHP, Veritabanını yapılandırmanıza olanak tanır config/app.php dosya. Tercihinize göre değiştirebileceğiniz parametrelerle varsayılan bağlantı sağlar.

Önemli parametreler aşağıda verilmiştir:

veritabanı Veritabanı Adı
bağlantı noktası (isteğe bağlı)
kodlama
Sunucuya bağlanmak için kullanılan TCP bağlantı noktası veya Unix soketi.
Saat Dilimi Ayarlanacak sunucu saat dilimi.
Şema Hangi şemayı kullanabileceğinizi belirtmenize yardımcı olur.
unix_socket Bu Veritabanı, sürücüler tarafından Unix soket dosyaları aracılığıyla bağlanmak için kullanılır.
SSL anahtarı SSL anahtar dosyasına giden bir dosya yoludur.
ssl_cert SSL sertifika dosyasına giden bir dosya yoludur.
SSL_ca SSL sertifika yetkilisine giden bir dosya yoludur.
Giriş Bu terim sorgu günlüğü oluşturmanıza yardımcı olur.
İçinde Bağlantı oluşturulduğunda veritabanı sunucusuna gönderilmesi gereken sorguların listesi.
Ayrılmış sözcükler veya özel karakterler kullanmak istiyorsanız true olarak ayarlayın

MVC CakePHP'de nasıl çalışır?

Şimdi bu CakePHP çerçeve eğitiminde MVC'nin CakePHP'de nasıl çalıştığını öğreneceğiz.

Bir web uygulamasının ana mekanizmasını oluşturmanın dinamik bir yoludur. Model, görünüm ve Denetleyici birbirinden ayrılır.

CakePHP'de MVC mimarisi
CakePHP'de MVC mimarisi

Cake PHP işlemleri üç bölüme ayırır:

  • Modeller: Tüm veritabanı etkileşimleri için kullanılır.
  • Görünümler: Tüm çıktı ve ekranlar için kullanılır.
  • Kontrolörler: Uygulama akışını kontrol etmek için kullanılır

CakePHP'de MVC mimarisini kullanma adımları şunlardır:

) 1 Adım İstemci veya kullanıcı görünümle etkileşime girer

) 2 Adım Belirli bir olayın uyarı denetleyicisini görüntüleyin.

) 3 Adım Modele bir veritabanı isteği gönderir ve Kontrolör modeli günceller.

) 4 Adım Model uyarıları, modelin değiştiğini gösteriyor.

) 5 Adım Görünüm, model verilerini alır ve alınan verilere göre kendisini günceller.

Neden MVC'yi kullanmalısınız?

  • CakePHP MVC, iş mantığını sunum ve veri alımından ayırmanıza yardımcı olur.
  • Bir site, belirli bir denetleyiciyle yönetebileceğiniz mantıksal bölümlere ayrılmıştır.
  • Bir uygulamayı test ederken ve hata ayıklarken, herhangi bir geliştirici kodun tüm ayrıntılarına sahip olmadan hataları bulmanıza ve düzeltmenize yardımcı olur.

CakePHP çerçevesini kullanmanın dezavantajları

  • CakePHP'nin dokümantasyon destekleri olması gerektiği kadar kapsamlı değildir.
  • CakePHP yazılımını kullanmak için geliştiricinin, diğer PHP çerçeveleriyle karşılaştırıldığında çok daha fazla iş gerektiren süslü URL'ler oluşturmaya yönelik varsayılan yolları güncellemesi gerekir.
  • CakePHP'nin diğer çerçevelerle karşılaştırıldığında tek yönlü yönlendirmesi.
  • PHP'yi öğrenmek çerçeve kolay değil.
  • Tek yönlü yönlendirme sunması Ruby on Rails gibi çerçevelerle karşılaştırıldığında başka bir dezavantajdır.

ÖZET

  • CakePHP, PHP uygulamalarının geliştirilmesini ve bakımını çok daha kolay hale getirmeye yardımcı olan açık kaynaklı bir çerçevedir.
  • CakePHP, geliştiricilerin veritabanı ve SQL sorguları üzerinde gelişmiş kontrol sahibi olmalarını sağlar.
  • Michal Tatarynowicz tarafından 15 Nisan 2005'te geliştirildi.
  • MVC mimarisi ve yerleşik doğrulama CakePHP'nin en önemli özellikleridir
  • CakePHP varsayılan olarak tek bir yapılandırma dosyasıyla birlikte gelir ve bu dosya onu gereksinimlerinize göre değiştirmenize olanak tanır.
  • CakePHP'nin adlandırma kuralı yöntemi, web uygulamasının çalışmasını düzenlemenizi sağlar.
  • CakePHP, Veritabanını config/app.php dosyasında yapılandırmanıza olanak tanır.
  • Cake PHP, MVC işlemlerini üç bölüme ayırır:
  • Modeller: Tüm veritabanı etkileşimleri için kullanılır, Görünümler: Tüm çıktılar ve görüntüler için kullanılır, Denetleyiciler: Uygulama akışını kontrol etmek için kullanılır
  • CakePHP'de MVC kullanmanın en büyük avantajı iş mantığını sunum ve veri alımından ayırmanıza yardımcı olmasıdır.
  • CakePHP'nin en büyük dezavantajı CakePHP'nin dokümantasyon desteklerinin olması gerektiği kadar kapsamlı olmamasıdır.

Bu yazıyı şu şekilde özetleyin: