CodeIgniter
Z Wikipedii, wolnej encyklopedii
(Przekierowano z Code Igniter)
CodeIgniter to prosty framework napisany w języku PHP przez Ricka Ellisa, służący do tworzenia aplikacji internetowych. W CodeIgniterze zaimplementowano takie wzorce jak model MVC, czy Active Record.
Spis treści |
[edytuj] Cechy CodeIgnitera
- Bazuje na wzorcu projektowym MVC
- Pełna kompatybilność PHP 5, zrezygnowano z PHP 4
- Bardzo mała waga
- Wsparcie dla kilku rodzajów baz danych (m.in. MySQL, PostgreSQL, itp.)
- Walidacja formularzy i treści
- Bezpieczeństwo (m.in. filtrowanie wejścia w celu zapobieżenia atakom XSS)
- Zarządzanie sesjami
- Wsparcie dla kilku protokołów pocztowych (m.in. sendmail, SMTP i Mail)
- Możliwość obróbki zdjęć, za pomocą bibliotek GD, ImageMagick, lub NetPBM
[edytuj] Wymagania CodeIgnitera
- Serwer z obsługą PHP w wersji co najmniej 5.1.6
- Baza danych (nie jest wymagana, ale jest zalecana). CodeIgniter obsługuje bazy: MySQL, MS SQL, PostgreSQL, Oracle, SQLite, oraz ODBC
[edytuj] Lista bibliotek zaimplementowanych w CI
CodeIgniter ma budowę modułową, a wśród zaimplementowanych klas znajdują się między innymi:
- Benchmarking – pozwala między innymi sprawdzić takie parametry, jak czas ładowania strony, czy ilość zużytej pamięci RAM.
- Calendaring – generuje różnego rodzaju kalendarze, które możemy potem umieścić na stronie.
- Database – zarządzanie bazą (bazami) danych. Liczne ułatwienia, takie jak Active Records pozwalają szybko i w prosty sposób pobierać potrzebne nam dane z bazy. CodeIgniter ponadto potrafi zapisywać w pamięci podręcznej zapytania, co przy dużej ilości unikalnych odwiedzin znacznie odciąża bazę danych i przyśpiesza ładowanie danych.
- Email – pozwala wysyłać maile za pomocą takich protokołów jak Mail, Sendmail, czy SMTP. Treść wiadomości może być wysyłana jako zwykły tekst, lub HTML. Ponadto w łatwy sposób można dodawać załączniki, czy wysyłać wiadomości do kilku osób naraz.
- Encryption – dzięki tej klasie możemy kodować, lub rozkodowywać słowa, zdania, czy nawet całe pliki.
- File Uploading – obszerna biblioteka pozwalająca wgrywać pliki na serwer z poziomu przeglądarki internetowej. Bardzo obszerna konfiguracja klasy pozwala wręcz dowolnie manipulować ładowanym plikiem.
- FTP – pozwala nam łączyć się z serwerem FTP i zarządzać plikami na nim umieszczonymi.
- HTML Table – generowanie tabel HTML. Dzięki tej klasie możemy w prosty sposób np. ustawić kilka zdjęć w kolumnach, czy podzielić tekst na grupy.
- Image Manipulation – dowolna manipulacja obrazkami – obracanie, skalowanie, zmiana rozmiaru, nakładanie znaków wodnych, dodawanie filtrów, itp. Możemy zmieniać grafikę za pomocą jednej z bibliotek graficznych: GD, GD2, oraz ImageMagick.
- Input and Security
- Loader – służy do wczytywania różnych elementów, np. widoku, modelu, czy wtyczek.
- Language - pozwala na tworzenie wielojęzycznych serwisów
- Output
- Pagination – pozwala na tworzenie automatycznego podziału wyników na strony.
- Session – upraszcza zarządzanie sesjami.
- Trackback
- Template Parser
- Unit Testing
- URI – pozwala odczytać dane przesłane przez użytkownika poprzez adres (URI)
- User Agent - pozwala odczytać dane przeglądarki odwiedzającej osoby (np. wersja)
- Validation – pomaga w ustaleniu zasad, które musi spełniać formularz (np. określenie maksymalnej długości tekstu)
- XML-RPC
- Zip Encoding – kompresowanie plików.
[edytuj] Literatura
- Thomas Myer: Professional CodeIgniter (Wrox Professional Guides). Wrox, 2008, s. 336. ISBN 978-0470282458.