Struktur kerangka kerja fruktum cukup sederhana.
Framwork menggunakan template desain HMVC (pengontrol model-video hierarkis).
Bagian kerangka kerja paling tinggi adalah titik input - file yang memicu peluncuran aplikasi. Dalam praktiknya, ini bisa berupa skrip index.php untuk server web, atau file yang dapat dieksekusi dari sistem operasi. Pada titik input, aplikasi selalu diluncurkan.
Aplikasi adalah konsep bersyarat. Ini adalah kelas yang mengontrol input dan output data. Pemisahan ke dalam aplikasi memungkinkan Anda membuat proyek Anda universal - itu akan dapat memulai keduanya dari bawah konsol dan melalui browser, sementara untuk setiap kasus Anda dapat menulis penangan terpisah, tetapi dengan semua ini menggunakan perpustakaan yang sama.
Contoh aplikasi:
Ketika titik input menyala pada operator (termasuk membutuhkan), menjadi mungkin untuk memulai aplikasi.
Cargoer mencari aplikasi yang tepat, maka instruksi yang relevan dijalankan. Dalam hal aplikasi web, router diluncurkan, yang menentukan jalur yang diinginkan, jika aplikasi adalah konsol, satu prosesor aplikasi konsol diluncurkan.
Semua kelas proyek (dengan pengecualian tingkat fruktum terendah) terkandung dalam ekstensi, modul, kait dan skrip kerangka kerja (selanjutnya kelas sistem).
Ketika Anda perlu memuat kelas apa pun, pertama -tama, kargoer memeriksa direktori dengan kait. Khuki dibuat untuk menulis ulang skrip nukleus dan ekstensi. Huki juga dapat digunakan untuk menulis aplikasi itu sendiri.
Kedua, katalog sistem dengan kelas sistem diperiksa. Kelas -kelas ini adalah kerabat untuk fruktum dan direktori mereka tidak disarankan untuk menyentuh direktori mereka untuk menghindari masalah dengan kompatibilitas dan memperbarui kerangka kerja. Jika Anda ingin mengubah kelas sistem, gunakan kait - buat kelas -Hook kelas dengan nama yang sama, dan itu tidak akan mencapai skrip sistem.
Terakhir, ekstensi diperiksa. Ini adalah penambahan kerangka kerja yang dapat ditulis dan diterbitkan semua orang. Mereka juga dapat digunakan untuk menulis aplikasi itu sendiri.
Ekspansi dapat memiliki modul sendiri ("Ekspansi Ekstensi"). Modul dibuat jika ekspansi besar (misalnya, CMS) dan menyediakan untuk modifikasi. Untuk menentukan modul milik ekspansi, cukup untuk hanya menambahkan awalan dengan nama ekspansi ke nama modul (misalnya, test_moodule akan menjadi modul untuk memperluas tes). Jika Anda menambahkan modul ke ekspansi yang tidak ada, itu tidak akan dimuat.
Aplikasi dalam kerangka fruktum adalah sistem tingkat rendah yang menentukan penangan data dan mengontrol output dari jawaban. Dengan kata lain, ini adalah sistem yang menerima data, mentransfernya ke prosesor dan kemudian menampilkannya.
Pemisahan ke dalam aplikasi diperlukan dalam kasus di mana data yang diberikan dan diterima dapat berbeda. Jika Anda menulis aplikasi konsol, itu akan sederhana - cukup menerima dan memberikan data. Namun, aplikasi web, selain data biasa, melaporkan cookie dan tajuk berita.
Perakitan standar fruktum berisi dua jenis aplikasi - konsol dan aplikasi web.
Aplikasi Combus adalah aplikasi yang diluncurkan melalui baris perintah atau SSH dan satu -satunya data input dari KP adalah argumen. Aplikasi Web adalah aplikasi yang diluncurkan melalui browser dan menerima data Get post, cookie, tajuk utama, dll. Data yang diberikan juga bervariasi.
Untuk meluncurkan proyek Anda, Anda perlu melakukan dua langkah: 1. Hubungkan kerangka kerja 2. Jalankan aplikasi
Perakitan standar disetel agar nyaman saat membuat aplikasi web. Dua langkah peluncuran yang disebutkan di atas dilakukan di titik masuk SO yang disebut. Dalam hal aplikasi web, inlet adalah index.php. Skrip ini mengambil semua permintaan HTTP, menghubungkan kerangka kerja dan meluncurkan aplikasi web.
Jika Anda ingin menulis jenis aplikasi Anda, kami sarankan Anda mengambil skrip aplikasi konsol sebagai dasar. Juga, jika diinginkan, Anda dapat membuat ulang aplikasi standar - menulis ulang router aplikasi web atau menulisnya untuk konsol. Ini tidak memerlukan pengetahuan tambahan, pelajari saja bagaimana aplikasi standar bekerja dan menulis ekspansi atau kait.
Aplikasi konsol adalah yang paling sederhana - router dan pengontrol tidak digunakan di sini, seperti dalam aplikasi web. Aplikasi ConsoleApp standar setelah memulai adalah mencari Konsol Handler dan memanggil metode run () di dalamnya. Jika tidak ada kelas seperti itu, kesalahan kritis akan terjadi
Class fructum config berisi konfigurasi yang diperlukan dari kerangka kerja. Untuk mengubahnya, Anda harus membuat kait Anda sendiri dengan menyalin/Sysystem/Fructum/config.php di /hooks/fructum/config.php dan ubah kontennya menjadi apa yang Anda butuhkan. Setiap parameter didokumentasikan
Jika ekstensi Anda memerlukan penyetelan, jangan buat kelas Anda - cukup hubungi konstanta kelas fructum config. Tambahkan informasi tentang data apa yang harus ditambahkan ke konfigurasi dalam instruksi untuk pemasangan ekspansi.
Memperhatikan! Data dalam konfigurasi adalah konstan, bukan variabel. Gunakan kontrol biaya.
Semua informasi terperinci tersedia untuk Vicki: http://wiki.blockstudio.net/wiki/Fructum