CodeIgniter

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare
CodeIgniter
software
Siglă
Tip PHP framework (nu este listat )
Dezvoltator EllisLab, Inc.
Ultima versiune 4.0.4 (15 iulie 2020)
Sistem de operare Multiplatform
Limba PHP
Licență Licență software deschis ("OSL") v. 3.0.
( licență gratuită )
Site-ul web www.codeigniter.com/

CodeIgniter este un cadru de aplicații web cu licență open source pentru dezvoltarea de aplicații web în limbaj PHP , bazat pe paradigma Model-View-Controller (MVC).

Prima versiune publică a fost distribuită de EllisLab la 28 februarie 2006 , în timp ce ultima versiune stabilă 3 (3.1.11) datează din 10 septembrie 2019 [1] . În prezent, cea mai recentă versiune stabilă este 4.0.2.

Descriere

CodeIgniter este renumit pentru viteza sa în comparație cu alte framework-uri PHP. [2] . Vorbind despre cadrele PHP în general, Rasmus Lerdorf , unul dintre creatorii limbajului PHP , vorbind la frOSCon în august 2008, a declarat că este unul dintre cadrele sale preferate „pentru că este rapid, ușor și, în sfârșit, este ca și cum ar trebui să fie un cadru ". [3]

Codul sursă CodeIgniter este publicat pe GitHub [4] , unde versiunea 4 este disponibilă în prezent, open source certificat cu Open Software License ("OSL") v. 3.0 ca versiunea anterioară 3. Versiunile anterioare ale CodeIgniter 3.0 se află sub licența open source proprietară în stil Apache / BSD. [5]

EllisLab, o companie privată situată în Bend , Oregon , care a creat inițial cadrul , a anunțat la 6 octombrie 2014 că dezvoltarea Codeigniter va fi continuată de British Columbia Institute of Technology [6] .

La 7 octombrie 2019, cei mai activi membri și dezvoltatori au fondat CodeIgniter Foundation, o companie non-profit care se ocupă cu guvernarea și dezvoltarea proiectului [7] . Jim Parry, unul dintre principalii creatori și dezvoltatori ai proiectului, a murit pe 15 ianuarie 2020 și continuă în mâinile celorlalți colaboratori [8] .

Caracteristici

CodeIgniter 3 este compact (ocupă aproximativ 2 MegaByte de spațiu pe disc) și este rapid în funcțiune [9] . Instalarea sa durează, în general, puțin timp și se poate face fără a utiliza linia de comandă sau în mod necesar instrumente precum Composer sau Git , deși sunt furnizate instrucțiuni pentru utilizarea acestora.

Datorită caracteristicilor sale, poate fi instalat cu ușurință în aproape toate sistemele de găzduire și cu diferite versiuni de PHP . Versiunea 3 necesită cel puțin versiunea PHP 5.3.7 (5.6 recomandată) [10] , în timp ce noua versiune 4, în prezent în versiune beta, va necesita cel puțin versiunea 7.2 (sau o versiune ulterioară) [11] .

CodeIgniter poate interfața, prin intermediul driverelor, diverse baze de date populare [12] :

  • MySQL v.5.1 + cu drivere mysqli și pdo
  • Oracle cu drivere oci8 și pdo
  • PostgreSQL cu drivere postsgre și pdo
  • Microsoft SQL cu mssql, sqlsrv (din versiunea 2005) și drivere pdo
  • SQLite cu driverele sqlite (versiunea 2), sqlite3 (versiunea 3) și pdo
  • CUBRID cu curbird și pdo driver
  • Interbase / Firebird cu drivere ibase și pdo
  • ODBC cu drivere odbc și pdo

Nu are un motor de șablonare încorporat, deși codificarea fișierelor șablon PHP poate fi simplificată prin utilizarea bibliotecilor de funcții încorporate care generează direct cod HTML . Mai mult, datorită grupului mare de utilizatori și bibliotecilor terțe, acesta poate fi interfațat cu motoare externe de modelare PHP, cum ar fi popularele Smarty PHP [13] și Twig .

CodeIgniter oferă stocarea în cache a paginilor web generate și a bazei de date și mecanisme de protecție împotriva celor mai frecvente amenințări, cum ar fi injecția SQL , în timpul introducerii datelor în formulare [14] .

Printre punctele slabe ale cadrului versiunii 3.0, absența spațiilor de nume (care, totuși, permite creșterea vitezei de execuție a codului și care sunt furnizate în versiunea 4), un anumit test de unitate greoi și un număr redus de biblioteci integrate [15 ] . Totuși, acest ultim punct determină avantajul dimensiunii reduse de instalare a cadrului , în timp ce programatorii pot găsi biblioteci terțe cu licență open source și le pot integra cu puțin efort sau își pot dezvolta propriile cu relativă ușurință, având în vedere structura extensibilă a CodeIgniter.

Cum functioneazã

CodeIgniter este un cadru MVC și funcționează ca atare.

Când un utilizator solicită o resursă de la serverul în care funcționează cadrul, interpretarea este efectuată de un controler, format din linii de software, care răspunde oferind un rezultat care poate fi înțeles de browserul utilizatorului datorită codului unei vizualizări sau vizualizare. Dacă este necesar, controlorul va prelua date pentru a satisface cererea, de exemplu din fișiere XML sau de pe un server de baze de date. Asocierea dintre solicitarea browserului și codul controlerului se face în CodeIgniter prin maparea adreselor URL la secțiuni specifice de cod. De exemplu, cererea:

www.sitocodedigniter.test / book / chapter / 1

de obicei poate fi interpretat de CodeIgniter prin invocarea unui controler care va utiliza vizualizarea numită „capitol” într-o clasă numită „carte” și trecând la acesta parametrul numeric „1”. Rezultatul procesării vizualizării va fi în orice caz o pagină de înțeles de browserul care a făcut cererea, de exemplu, în acest caz, după ce a preluat informațiile referitoare la capitolul 1 dintr-o bază de date și le-a formatat în conformitate cu standardul HTML folosind un șablon de pagină prefabricat.

Rezumând componentele modelului MVC al CodeIgniter:

  • Șabloanele gestionează datele necesare pentru aplicație, permițându-vă în același timp să aplicați reguli speciale pentru gestionarea informațiilor necesare
  • Vizualizările sunt fișiere de reguli simple, adică fără prea mult cod, care sunt responsabile de prezentarea rezultatelor procesării software-ului către utilizator prin intermediul browserului
  • Controlerele sunt codul de programare care conectează cele două elemente anterioare, gestionând fluxul de informații între vizualizare și datele gestionate de aplicație, cum ar fi introducerea utilizatorului și baza de date.

Codeigniter 4

Versiunea 4 lansată pe 24 februarie 2020 [16] a fost complet rescrisă și nu este compatibilă cu versiunea anterioară 3. Aceasta a funcționat cu versiunea PHP 5.6 sau ulterioară, în timp ce noua versiune a fost realizată pentru versiunea PHP 7.2 sau ulterioară.

Structura unui site dezvoltat cu Codeigniter 4 a fost modificată și acum există un folder public care reprezintă rădăcina site-ului web. O alegere dictată în principal din motive de securitate, întrucât în ​​acest fel este posibil să se izoleze și să „se ascundă” mai ușor de utilizatori folderele de sistem și aplicație în care este conținut codul real. Mai mult, acum este oferit un folder înscris cu permisiuni de scriere pentru stocarea fișierelor de lucru generate de aplicație, de exemplu cache-ul paginii, dar care nu este accesibil prin URL .

Codeigniter 4, ca și versiunea anterioară, rămâne bazat pe paradigma MVC (model-vizualizare-controler) și nu pe paradigma HMVC (ierarhică-model-vizualizare-controler) pentru alegerea specifică a dezvoltatorilor.

Gestionarea bazei de date este aproape identică, deși unii dintre conectorii și sintaxa ORM acceptată s-au schimbat. Încărcarea bibliotecilor, șabloanelor și a altor obiecte este aceeași ca înainte, dar puteți specifica în fișierele de configurare, ca și în fișierele de cod, căile de localizare în format PSR4. În plus, în Codeigniter 4 au fost integrate noi instrumente de testare și depanare, cum ar fi KINT [17] .


Notă

  1. ^ (RO) James Parry (responsabil de proiect), CodeIgniter 3.1.10 Lansat pe forum.codeigniter.com. Adus la 11 iulie 2019 .
  2. ^ Actualizare benchmark: Tort vs. CodeIgniter vs. Kohana , pe pr0digy.com . Adus la 24 iulie 2009 (arhivat din original la 29 februarie 2012) .
  3. ^ Rasmus Lerdorf: Cadre PHP? Gândiți-vă din nou , la sitepoint.com . Accesat la 3 august 2013 .
  4. ^ EllisLab / CodeIgniter · GitHub
  5. ^ Ghidul utilizatorului CodeIgniter Versiunea 2.1.4: Contract de licență CodeIgniter , la codeigniter.com . Adus la 10 iulie 2013 .
  6. ^ Cadrul dvs. PHP preferat are o casă nouă , la ellislab.com . Adus la 26 decembrie 2017 (arhivat din original la 17 octombrie 2014) .
  7. ^ (RO) Jim Parry, Fundația CodeIgniter în loc , pe forum.codeigniter.com. Adus la 16 iulie 2019 .
  8. ^ Știri importante despre Jim Parry și proiect , la forum.codeigniter.com . Adus la 25 februarie 2020 .
  9. ^ 7 Cele mai bune cadre PHP , pe tisindia.com .
  10. ^ Cerințe de server - documentația CodeIgniter 3.1.10 , la codeigniter.com . Adus la 11 iulie 2019 (arhivat din adresa URL originală la 11 iulie 2019) .
  11. ^ (EN) Cerințe de server - Documentație CodeIgniter4 4.0.0-beta.3 pe codeigniter4.github.io. Adus pe 23 iulie 2019 .
  12. ^ Documentația privind cerințele serverului , la www.codeigniter.com . Adus la 11 iulie 2019 .
  13. ^ CodeIgniter + Smarty, Perfect Together , la coolphptools.com .
  14. ^ (EN) Mindfire Solutions Pro și Contrave CodeIgniter Framework on Blogs @ Mindfire Solutions, 22 martie 2018. Adus pe 11 iulie 2019.
  15. ^ 11 Cea mai bună revizuire a cadrelor , pe coderseye.com .
  16. ^ CodeIgniter 4.0 este aici! , pe forum.codeigniter.com . Adus la 25 februarie 2020 .
  17. ^ kint-php / kint , kint-php, 25 februarie 2020. Adus 25 februarie 2020 .

linkuri externe

Informatică Portal IT : accesați intrările Wikipedia care se ocupă cu IT