CodeStruktur Folder, File & Direktori Igniter

⚡ Ringkasan Cerdas

CodeIgniter mengatur proyek PHP ke dalam folder yang mudah diprediksi untuk logika aplikasi, file sistem kerangka kerja, paket vendor Composer, dan skrip entri tunggal, sehingga pemula dapat menemukan kode dengan cepat dan pengembang tingkat menengah dapat meningkatkan skala struktur MVC yang rapi.

  • 📁 Folder aplikasi: Berisi controller, model, view, konfigurasi, cache, helper, hook, bahasa, library, log, dan paket pihak ketiga Anda.
  • 🧩 Folder sistem: Berisi inti kerangka kerja, driver basis data, font, helper, bahasa, dan pustaka bawaan; jangan mengedit file-file ini secara langsung.
  • ⚙️ Titik masuk: File index.php di direktori root menjalankan framework, mengatur path, dan mengarahkan setiap permintaan HTTP melalui front controller.
  • Perbedaan versi: CodeIgniter 3 menggunakan application/ dan system/, sedangkan CodeIgniter 4 memperkenalkan folder app/, public/, dan writable/ untuk pemisahan yang lebih ketat.
  • 🧪 Panduan vendor dan pengguna: Vendor menyimpan paket composer yang Anda sebarkan, sedangkan user_guide adalah dokumentasi lokal yang harus Anda kecualikan dari server produksi.

CodeFolder Pemantik

Memahami struktur file di CodeIgniter sangat penting sebelum Anda membangun aplikasi sungguhan. Tata letak yang mudah diprediksi membantu Anda menemukan controller, model, dan view dengan cepat, mendebug masalah routing, dan mempercepat proses orientasi anggota tim baru. Tutorial ini membahas Igniter klasik. CodeStruktur Igniter 3 yang masih banyak digunakan, dan juga menjelaskan perbedaan utama yang akan Anda temui di dalamnya. CodeIgniter 4.x, yang memperkenalkan app/, public/, dan writable/ sebagai folder tingkat atas yang terpisah.

Apakah yang dimaksud dengan CodeStruktur File dan Direktori Igniter?

The CodeStruktur file Igniter adalah susunan default folder dan file PHP yang disertakan oleh framework setelah Anda mengunduh atau menginstalnya. Struktur ini memisahkan logika aplikasi Anda dari inti framework, menjaga dependensi Composer tetap terisolasi, dan mengekspos satu titik masuk melalui index.php. Gambar berikut menunjukkan struktur file tersebut. CodeAlat penyala:

CodeStruktur File/Folder/Direktori Igniter
CodeStruktur File/Folder/Direktori Igniter

Berikut adalah struktur direktori yang disederhanakan untuk instalasi baru. CodeInstalasi Igniter 3:

// CodeIgniter 3 root layout
project-root/
├── application/
├── system/
├── user_guide/
├── vendor/
├── composer.json
├── composer.lock
└── index.php

Penjelasan tentang Folder Tingkat Atas

Sekarang mari kita lihat berkas-berkas di atas. CodeStruktur Pemantik:

  • aplikasi – Ini adalah direktori yang akan berisi logika aplikasi Anda. Semua kode aplikasi Anda akan terdapat di direktori ini.
  • sistem – folder ini berisi file inti kerangka kerja. Tidak disarankan untuk melakukan perubahan pada direktori ini atau memasukkan kode aplikasi Anda sendiri ke dalam direktori ini.
  • panduan pengguna – direktori ini berisi panduan pengguna untuk CodeAlat penyala.
  • penjaja – Direktori ini berisi kode sumber paket Composer. File lain yang terkait dengan direktori ini adalah composer.json dan composer.lock.
  • index.php – ini adalah titik masuk ke dalam aplikasi.

CodeSubdirektori Aplikasi Igniter

Sekarang mari kita lihat direktori-direktori tersebut secara lebih detail. Seperti yang telah disebutkan, direktori aplikasi berisi kode proyek Anda. Di bagian ini, kita akan melihat subdirektori internal di dalam direktori tersebut. CodeStruktur direktori Igniter:

  • Cache – menyimpan file yang di-cache yang dihasilkan oleh pustaka caching output dan basis data.
  • config – menyimpan file konfigurasi seperti database.php, routes.php, dan autoload.php.
  • pengendali – semua pengontrol aplikasi didefinisikan di sini dan dipetakan URL segmen ke tindakan.
  • inti – berisi kelas inti kustom yang memperluas file sistem. Misalnya, jika Anda membuat pengontrol dasar yang harus diperluas oleh pengontrol lain, Anda akan menempatkannya di direktori ini.
  • pembantu – direktori ini CodeStruktur folder Igniter digunakan untuk fungsi pembantu yang didefinisikan pengguna.
  • kait – digunakan untuk hook kustom dalam struktur folder CI yang dijalankan selama siklus eksekusi framework.
  • bahasa – digunakan untuk menyimpan berkas bahasa untuk aplikasi yang menggunakan lebih dari satu bahasa.
  • perpustakaan – digunakan untuk menyimpan pustaka yang dibuat khusus.
  • log – File log aplikasi disimpan di direktori ini.
  • model – semua model aplikasi harus didefinisikan di direktori ini.
  • pihak ketiga – ini digunakan untuk paket khusus yang Anda atau pengembang lain buat.
  • 'view' – Tampilan aplikasi masuk ke direktori ini.

Berikut adalah contoh struktur subdirektori aplikasi:

// application/ subdirectories
application/
├── cache/
├── config/
├── controllers/
├── core/
├── helpers/
├── hooks/
├── language/
├── libraries/
├── logs/
├── models/
├── third_party/
└── views/

CodeSubdirektori Sistem Igniter

Sekarang mari kita lihat subdirektori sistem dalam struktur file CI. Ingat, di sinilah kode sumber framework berada, oleh karena itu jangan melakukan perubahan apa pun pada file di direktori ini.

  • inti – ini seperti jantungnya CodeKerangka Kerja IgniterSemua file inti yang membentuk kerangka kerja terletak di sini. Jika Anda ingin memperluas fungsionalitas file inti, Anda perlu membuat file inti kustom di direktori aplikasi. Setelah itu, Anda dapat menimpa atau menambahkan perilaku baru yang Anda inginkan. Anda tidak boleh melakukan perubahan langsung di sini.
  • Database – Driver basis data, cache, dan file lain yang dibutuhkan untuk operasi basis data disediakan di sini.
  • font —Seperti namanya, direktori ini berisi font dan informasi yang berkaitan dengan font.
  • pembantu – direktori ini di dalam CodeFolder struktur Igniter berisi fungsi-fungsi pembantu yang sudah tersedia sejak awal.
  • bahasa – berisi file bahasa yang digunakan oleh kerangka kerja.
  • perpustakaan – berisi file sumber untuk berbagai pustaka yang disertakan CodePemantik api langsung dari kotak.

Tata letak folder sistem terlihat seperti ini:

// system/ subdirectories
system/
├── core/
├── database/
├── fonts/
├── helpers/
├── language/
└── libraries/

CodePanduan pengguna Igniter Direktori

Direktori ini berfungsi sebagai panduan referensi ketika Anda ingin memahami CodeAPI Igniter. Anda tidak boleh mengunggah direktori ini saat menerapkan aplikasi Anda ke lingkungan produksi, karena akan menambah ukuran dan mengekspos dokumentasi yang tidak seharusnya ada di server yang sedang berjalan.

CodeDirektori Vendor Igniter

Direktori ini berisi file sumber untuk paket yang Anda instal melalui Composer. File-file di direktori ini harus dibiarkan apa adanya dan tidak boleh diubah. Tidak seperti direktori user_guide, direktori ini harus diunggah jika Anda menggunakan paket Composer di aplikasi Anda.

File index.php

File index.php di dalam CodeStruktur file Igniter berisi kode bootstrap yang mendefinisikan lingkungan, jalur, dan pelaporan kesalahan sebelum menyerahkan kendali ke framework. File ini terletak di direktori root dan bertindak sebagai pengontrol depan untuk setiap permintaan HTTP yang masuk.

Seterpercayaapakah Olymp Trade? Kesimpulan CodePemicu 4 Mengubah Struktur

CodeIgniter 4.x menata ulang tata letak untuk meningkatkan keamanan dan pemuatan otomatis PSR-4. Alih-alih satu folder aplikasi tunggal, kini Anda melihat tiga folder tingkat atas yang memisahkan berbagai hal secara lebih ketat:

  • aplikasi/ – setara dengan folder application/ yang lebih lama, yang berisi Controller, Model, View, Config, Filter, dan Libraries.
  • publik/ – satu-satunya folder yang terekspos ke web, berisi index.php dan aset CSS, JS, serta gambar Anda.
  • dapat ditulis/ – menyimpan cache, log, sesi, dan unggahan yang perlu ditulis oleh framework saat runtime.
  • sistem/ – masih memegang inti kerangka kerja, yang diberi nama di bawah CodeAlat penyala\.
  • penjaja/ – paket composer, identik dalam peran dengan CI 3.
// CodeIgniter 4 root layout
project-root/
├── app/
├── public/
├── writable/
├── system/
├── vendor/
├── tests/
├── composer.json
├── env
└── spark

Jika Anda memulai proyek baru hari ini, CodeIgniter 4 adalah versi yang direkomendasikan. Jika Anda memelihara basis kode yang lebih lama, struktur CI 3 yang dijelaskan di atas akan sesuai dengan apa yang Anda lihat di disk.

Bekerja dengan CodeStruktur Igniter Sehari-hari

Setelah Anda mengetahui letak setiap folder, tugas-tugas umum akan menjadi mudah. ​​Buat controller baru di bawah application/controllers/ (atau app/Controllers/ di CI 4), cocokkan dengan rute di config/routes.php, bangun model di bawah models/, dan render output dari file view di views/. Simpan konfigurasi di config/, letakkan kode yang dapat digunakan kembali ke helpers/ atau libraries/, dan biarkan composer mengelola semuanya di dalam vendor/. Patuhi disiplin ini dan proyek Anda akan tetap mudah dinavigasi meskipun terus berkembang.

Pertanyaan Umum Demo Slot

Folder aplikasi berisi kode proyek Anda seperti controller, model, dan view, dan Anda dapat mengeditnya dengan bebas. Folder sistem berisi inti framework, dan Anda tidak boleh memodifikasi file-file di dalamnya karena pembaruan framework akan menimpanya.

In CodeDi Igniter 4, Anda menempatkan controller baru di folder app/Controllers/ menggunakan namespace PSR-4. Cocokkan nama file dengan nama kelas, lalu daftarkan rute di app/Config/Routes.php agar framework dapat mengirimkan permintaan ke sana.

Tidak. Folder user_guide hanya berisi dokumentasi lokal. Kecualikan folder ini dari penerapan produksi untuk mengurangi jejak dan menghindari paparan materi referensi kerangka kerja pada server yang sedang berjalan. Sebaliknya, folder vendor dan sistem harus diterapkan.

File index.php adalah pengontrol depan. File ini mengatur lingkungan, mendefinisikan konstanta jalur, dan memuat bootstrap kerangka kerja sehingga setiap permintaan masuk dirutekan melalui halaman tersebut. CodeAktifkan pipeline sebelum mencapai controller dan view Anda.

Ya. Alat AI seperti GitHub Copilot, Cursor, dan Claude dapat menyusun controller, model, dan view di folder yang benar, menjelaskan file yang tidak dikenal, dan menandai kelas yang salah tempat. Alat-alat ini sangat membantu saat Anda beralih antar proyek. CodePemantik 3 dan CodeTata letak Igniter 4.

Asisten AI menjelaskan bagaimana controller menangani permintaan, model mengelola data, dan view merender output, kemudian menghasilkan file yang sesuai di folder yang benar. Mereka juga dapat meninjau kode Anda, menyarankan refactoring, dan memperkuat pemisahan MVC saat Anda membangun aplikasi nyata. CodeProyek Igniter.

Ringkaslah postingan ini dengan: