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.

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.
