În ultimii 2 ani, utilizez în mod activ a doua versiune a cadrului Codeigniter. Deși l-am întâlnit cu el în urmă cu aproape 7 ani. Ceva în el am fost dezamăgit și am început să mă familiarizez cu simfonia și Yii. Alegerea a căzut pe Yii, cu toate acestea, și cu el am dispersat în jumătate de an. Se pare că nu a existat suficientă experiență în programare sau în scopul creării propriului motor excelent. În urmă cu doi ani, partenerul meu a propus să scrie împreună un motor modern și utilizați-l în toate proiectele sale, înlocuind treptat motoarele libere și premium din viața lor.
Aveam nevoie de un motor flexibil, ușor, rapid și simplu - a fost un codificator care a permis acest lucru. A fost necesar să se împartă logica tuturor modulelor. Faceți fiecare modul independent, realizați capacitatea de a crea și instala module suplimentare pentru a dezvolta un site de orice complexitate și scară. În același timp, trebuie să vă gândiți la băieții care vor trebui să se ocupe de acest motor în viitor după noi și să înțeleagă rapid codul și logica tuturor metodelor și controlorilor. Concluzie - a fost necesar să înlocuiți modelul standard-view-controller - cu un model ierarhic.
A rezolvat literal toate problemele și mi-a dat - înainte de luxul fără precedent în programare. Nu mai trebuie să ne facem griji cu privire la activitatea principalelor biblioteci ale site-ului și să punem codificatorul pe umerii întregii logici de lucru cu poșta, sesiunile, coșul de cumpărături și altele.
Acum gândim prin logica aplicației și cu piesele pe care le rezolvăm de 5 ori mai repede decât ar trebui să scriem tot codul în PHP pur. În general, să testați cea mai recentă versiune a vechiului cadru de codificare și să instalați o extensie modulară.
Deci: descărcați cea mai recentă versiune de CodeIgniter 3.0.2 în acest moment. Am despachetat-o în arhivă cu noul nostru site, pe serverul local pe care l-am denumit ci3.ru. Creați o bază de date ci3 și specificați numele de conectare și parola pentru MySQL în fișierul config - folderul 'application / config / database.php'. Începem și vedem fereastra de întâmpinare.
Înainte de a continua instalarea extensiei, permiteți setarea aplicației pentru o muncă mai convenabilă.
3) Copiați cele două foldere de extensie modulare (nucleu, third_party) în / folderul aplicației.
4) Să schimbăm puțin modul de stocare a modulelor. În mod implicit, dosarul modulelor este stocat în folderul aplicației. Dar prefer să pun folderul de module, imagini, scripturi și șabloane la radacina site-ului și să folosesc dosarul de aplicație în cazuri extreme pentru flexibilitatea aplicației. Încă o dată, deschideți fișierul de configurare application / config / config.php și adăugați următorul cod la sfârșitul fișierului:
5) Să încercăm să folosim aplicația în practică:
- Creați dosarul modulelor în rădăcina site-ului
- În dosarul module, creați dosarul de întâmpinare - acesta este primul nostru modul de întâmpinare, al cărui cod este preluat din mesajul de întâmpinare CodeIgniter
- Copiați controalele de dosare și vizualizările din dosarul aplicației în dosarul module / primire. Puteți șterge fișierele inutile, avem nevoie de doar controlerul și vizualizarea welcome_message.php
- Ștergeți controlerul vechi și vizualizați fișiere din dosarul aplicației
- Lansarea site-ului ci3.ru/welcome - Totul funcționează!
Ei bine, asta nu e tot. Să mutați folderul șablonului în rădăcina site-ului. Spuneți-mi cum să proiectez convenabil front-end - nu căutați fișiere șablon pentru foldere, dar editați și stocați toate fișierele într-un singur loc. Să adăugăm o mică funcție aplicației / core-ului / MY_Loader.php pentru controlerul de boot
Creați un dosar numit teme în rădăcina site-ului și copiați șablonul de bun venit în el adăugând prefixul _hmvc.php. Scrieți o nouă funcție în modulul Welcome modul
Fugiți, verificați. lucrări ;-) Acum putem stoca fișierele șablon atât în dosarul cu modulul (este convenabil pentru dezvoltarea backend-ului aplicației), cât și în temele pentru dosare comune - pentru frontend.
Polyakov E.
Jan, vă mulțumesc foarte mult pentru recenziile frumoase!
Studiind cadrul - am avut astfel de sentimente - ca și cum ai începe să te întâlnești cu o fată nouă și să te îndrăgostești de ea la urechi și nu-ți poți imagina viața fără ea. Și aici vă pot estima codificatorul. Mă excitează pentru zile și nopți lungi în dezvoltarea de module unice și universale. În general, încercați ;-)
Da, am pus o restricție - acesta ar fi numele format din cel puțin 3 litere. Este necesar să eliminați probabil) Vă mulțumim
Înțeleg cu 4 cadre pe rând - CodeIgniter, Yii, Laravel, Symfony. Doar modularitatea cu cutia (HMVC) lipsește în primul rând. CodeIgniter, deși se dezvoltă încet, este foarte rapid, simplu, ușor de înțeles și ocupă un spațiu mic. În locul arhivelor sursă, a trebuit să creați un depozit separat pe GitHub. Deci ar fi mai ușor să fii călăuzit de schimbări.
Eugene! Întrebarea unui programator începător. La dvs. site-ul este încărcat în jur de 2 secunde, ceea ce înseamnă că ce codificare în Codigniter nu este atât de eficient?
mulțumiri pentru articol. Atunci când este instalat pe CI 3.1.3 au existat unele erori: Fatal error: Chemare la metoda MY_Loader nedefinită :: _ ci_object_to_array () în C: \ xampp \ htdocs \ codeigniter \ cerere \ THIRD_PARTY \ MX \ Loader.php pe linia 300. Acesta este tratat prin adăugarea de Tu se poate adauga inapoi la _ci_object_to_array funcția protejată Loader.php ($ obiect)