Tutorial CakePHP untuk Pemula: Apa itu Framework CakePHP?

Ringkasan Tutorial CakePHP

Dalam tutorial CakePHP ini, kita akan mempelajari semua konsep dasar dari awal. Tutorial ini mencakup definisi CakePHP, Sejarah, Fitur, Struktur dan konfigurasi folder, dan detail singkat tentang cara kerja framework CakePHP.

Apa itu CakePHP?

CakePHP adalah kerangka kerja sumber terbuka untuk pengembangan dan pemeliharaan aplikasi web yang dibangun dalam PHP. Kerangka kerja ini didasarkan pada konsep arsitektur MVC, yang membantu membangun aplikasi web PHP dengan mudah dan sederhana dengan lebih sedikit kode. CakePHP juga membantu Anda memisahkan logika bisnis dari lapisan data dan lapisan presentasi.

Mengapa menggunakan Kerangka CakePHP?

Berikut adalah manfaat/kelebihan utama menggunakan kerangka CakePHP:

  • Cake PHP sejauh ini merupakan salah satu platform pengembangan web tercepat.
  • CakePHP memungkinkan pengembang untuk mendapatkan kontrol yang lebih baik atas database dan query SQL.
  • Ini membantu pengguna untuk mengembangkan aplikasi web yang kuat tanpa kehilangan fleksibilitas lingkungan mereka dengan cepat.
  • Dukungan untuk PostgreSQL, SQLite, MySQL, PEAR-DB untuk ADODB, perpustakaan abstraksi database.
  • Memfasilitasi URL Ramah Mesin Pencari
  • Menyediakan fitur seperti validasi masukan dan alat sanitasi yang membuat aplikasi aman.
  • Templating dengan sintaks PHP yang familiar

Sejarah CakePHP

Sekarang dalam tutorial CakePHP ini, kita akan membahas sejarah framework CakePHP:

Tahun Batu
2005 CakePHP dikembangkan oleh Michal Tatarynowicz pada tanggal 15 April 2005.
2005 CakePHP menerbitkannya di bawah lisensi MIT dan membukanya untuk komunitas pengembang.
2005 Larry E Masters mengambil alih sebagai pengembang utama.
2006 Versi 1.0 telah dirilis
2011 Versi 2 telah dirilis
2014 Versi 3 dirilis yang sepenuhnya mencabut versi sebelumnya.
2016 Versi 3.3.3. Tentu CakePHP dirilis dengan banyak fitur canggih.
2019 Versi 3.7.9 adalah versi terakhir yang dirilis
2021 Tim inti CakePHP segera mengumumkan ketersediaan CakePHP 4.2.2

Fitur CakePHP

Berikut adalah fitur penting dari CakePHP.

  • Komunitas yang aktif dan ramah
  • arsitektur MVC
  • Validasi bawaan
  • Bekerja dari direktori situs web mana pun, dengan beberapa atau tanpa konfigurasi Apache yang terlibat.
  • Mesin Template
  • caching Operations
  • Interaksi Basis Data CRUD yang Mudah.
  • Validasi Bawaan
  • Menangani Komponen seperti Email, Cookie, Keamanan, Sesi, dan Permintaan
  • Lihat Pembantu untuk JavaNaskah, Ajax, Formulir HTML, dan Lainnya

CakePHP- Struktur Folder

Nah pada tutorial framework CakePHP kali ini, kita akan belajar tentang struktur folder CakePHP.

Di bawah ini adalah struktur folder CakePHP:

Map Uraian Teknis
Tes Folder ini berisi kasus uji untuk aplikasi Anda.
tmp Folder temp menyimpan data sementara.
Penjaja Folder ini membantu Anda menyimpan CakePHP, dan dependensi aplikasi lainnya akan diinstal.
Webroot The Webroot menyimpan semua file yang Anda ingin dapat dijangkau secara publik.
Bin Folder bin menampung executable konsol Cake.
Log Ini berisi file log Anda, yang bergantung pada konfigurasi log Anda.
config Folder config menyimpan file konfigurasi yang digunakan CakePHP
plugin Folder ini berisi Plugin untuk aplikasi. adalah tempat penyimpanan Plugin yang digunakan aplikasi Anda.
sr. Ini berisi tugas konsol dan perintah untuk mengelola aplikasi Anda.

Lokal Menyimpan file string untuk internasionalisasi.

Model Berisi tabel, entitas, dan perilaku aplikasi Anda.

Konfigurasi CakePHP

CakePHP hadir dengan satu file konfigurasi secara default. Ini juga memungkinkan Anda untuk memodifikasinya sesuai dengan kebutuhan Anda. Ada folder bernama “config” yang diberikan untuk tujuan ini.

Nama Variabel Uraian Teknis
Debug Memungkinkan Anda mengubah keluaran debugging CakePHP.
Aplikasi.namespace Membantu Anda menemukan kelas aplikasi di bawah.
Aplikasi.baseUrl Hapus komentar pada kata kunci ini jika Anda tidak ingin menggunakan mod_rewrite Apache dengan CakePHP.
Aplikasi.encoding Perintah ini memungkinkan Anda untuk menentukan pengkodean apa yang digunakan aplikasi Anda.
Aplikasi.base Ini adalah direktori dasar tempat aplikasi berada. Jika salah, ini akan terdeteksi secara otomatis.
Aplikasi.fullBaseUrl Nama domain yang memenuhi syarat
Aplikasi.webroot Ini adalah direktori webroot.
Aplikasi.wwwRoot Jalur file ke webroot.
Aplikasi.jsBaseUrl Jalur ke direktori js publik.
Aplikasi.jalur Konfigurasikan jalur untuk sumber daya berbasis non-kelas.
Aplikasi.cssBaseUrl Ini adalah jalur web ke direktori css publik di bawah webroot.
Keamanan.garam Ini adalah string acak yang digunakan dalam hashing.
Aset.cap waktu Variabel ini memungkinkan Anda menambahkan stempel waktu saat menggunakan pembantu yang tepat.

Kue- Konvensi penamaan PHP

Cake mengikuti gagasan konvensi atas konfigurasi. Metode konvensi penamaan memungkinkan Anda mengatur pengoperasian aplikasi web. Dalam metode ini, lebih dari satu kata dalam nama harus dipisahkan dengan “_” saat memberi nama file dan huruf besar/kecil saat memberi nama kelas.

Bagian MVC harus mengikuti sintaks yang diberikan di bawah ini:

File Name Nama kelas Nama Kelas Dasar Lokasi
Pilih Model File Name
Nama tabel berbentuk tunggal dengan ekstensi .php, contoh: order.php
Nama file dalam case Camel, misal: Order Model Aplikasi /aplikasi/model
pengawas tablename_controller dengan ekstensi .php, misal: ordcrs_controllcr.php Nama tabel yang ditambahkan Controller, misal: OrdcrsController Pengontrol Aplikasi /app/controllers
Liha Nama tindakan di pengontrol dengan ekstensi .ctp, misal: add.ctp Tidak ada kelas; tampilan c tag HTML dan PHP. ' /app/vuews/nama pengontrol

Konfigurasi Basis Data

CakePHP memungkinkan Anda untuk mengkonfigurasi Database di config/app.php mengajukan. Ini menyediakan koneksi default dengan parameter yang disediakan yang dapat Anda modifikasi sesuai pilihan Anda.

Parameter penting diberikan di bawah ini:

Basis Data Nama Basis Data
pelabuhan (opsional)
encoding
Port TCP atau soket Unix yang digunakan untuk terhubung ke server.
Timezone Zona waktu server yang akan ditetapkan.
Skema Ini membantu Anda menentukan skema mana yang dapat Anda gunakan.
unix_socket Database ini digunakan oleh driver untuk terhubung melalui file soket Unix.
Kunci SSL Ini adalah jalur file ke file kunci SSL.
ssl_cert Ini adalah jalur file ke file sertifikat SSL.
sl_ca Ini adalah jalur file ke otoritas sertifikat SSL.
Log Istilah ini membantu Anda melakukan pencatatan kueri.
Init Daftar pertanyaan yang harus dikirim ke server database setiap kali koneksi dibuat.
Setel ke true jika Anda ingin menggunakan kata khusus atau karakter khusus

Bagaimana cara kerja MVC di CakePHP?

Sekarang, kita akan mempelajari cara kerja MVC di CakePHP dalam tutorial framework CakePHP ini.

Ini adalah cara dinamis untuk membangun mekanisme utama aplikasi web. Model, tampilan, dan Pengontrol- saling terpisah.

Arsitektur MVC di CakePHP
Arsitektur MVC di CakePHP

Cake PHP membagi operasi menjadi tiga bagian:

  • Model: Digunakan untuk semua interaksi database.
  • Tampilan: Digunakan untuk semua output dan tampilan.
  • Pengontrol: Digunakan untuk mengontrol aliran aplikasi

Berikut ini langkah-langkah untuk menggunakan arsitektur MVC di CakePHP:

Langkah 1) Klien atau pengguna berinteraksi dengan tampilan

Langkah 2) Lihat pengontrol peringatan peristiwa tertentu.

Langkah 3) Ia mengirimkan permintaan database ke Model dan Pengontrol memperbarui model.

Langkah 4) Model memperingatkan tampilan bahwa itu telah berubah.

Langkah 5) Tampilan menerima data model dan memperbarui dirinya sendiri sesuai dengan data yang diterima.

Mengapa menggunakan MVC?

  • CakePHP MVC membantu Anda memisahkan logika bisnis dari presentasi dan pengambilan data.
  • Sebuah situs dibagi menjadi beberapa bagian logis yang dapat Anda atur dengan pengontrol tertentu.
  • Saat menguji dan men-debug aplikasi, pengembang mana pun membantu Anda menemukan dan memperbaiki kesalahan tanpa memiliki detail kode yang lengkap.

Kekurangan menggunakan framework CakePHP

  • Dukungan dokumentasi CakePHP tidak selengkap yang seharusnya.
  • Untuk menggunakan perangkat lunak CakePHP, pengembang perlu memperbarui rute default untuk membuat URL mewah, yang jauh lebih sulit dibandingkan dengan kerangka kerja PHP lainnya.
  • Perutean satu arah CakePHP dibandingkan dengan kerangka kerja lainnya.
  • Belajar PHP kerangka kerja bukanlah hal yang mudah.
  • Menawarkan perutean satu arah adalah kelemahan lain jika dibandingkan dengan kerangka kerja seperti Ruby on Rails.

Ringkasan

  • CakePHP adalah kerangka kerja sumber terbuka yang membantu membuat pengembangan dan pemeliharaan aplikasi PHP menjadi lebih mudah.
  • CakePHP memungkinkan pengembang untuk mendapatkan kontrol yang lebih baik atas database dan query SQL.
  • Ini dikembangkan oleh Michal Tatarynowicz Pada tanggal 15 April 2005
  • Arsitektur MVC dan validasi bawaan adalah fitur terpenting CakePHP
  • CakePHP hadir dengan satu file konfigurasi secara default yang memungkinkan Anda memodifikasinya sesuai kebutuhan Anda.
  • Metode konvensi penamaan CakePHP memungkinkan Anda mengatur pengoperasian aplikasi web.
  • CakePHP memungkinkan Anda untuk mengkonfigurasi Database dalam file config/app.php.
  • Cake PHP membagi operasi MVC menjadi tiga bagian:
  • Model: Digunakan untuk semua interaksi database, Tampilan: Digunakan untuk semua output dan tampilan, Pengendali: Digunakan untuk mengontrol aliran aplikasi
  • Keuntungan terbesar menggunakan MVC di CakePHP adalah membantu Anda memisahkan logika bisnis dari presentasi dan pengambilan data.
  • Kelemahan terbesar CakePHP adalah dukungan dokumentasi CakePHP tidak selengkap yang seharusnya.

Ringkaslah postingan ini dengan: