Co nowego w KohanaPHP 3.0 krótkie podsumowanie

Kategoria: Javascript, HTML i CSS



meverone
13 październik 2009 - 18:33
Co nowego w KohanaPHP 3.0

KohanaPHP jest frameworkiem napisanym w PHP 5, który używa architektury Model View Controller. Kohana to fork CodeIgnitera. Start projektu zaczął się od wersji CI 1.5.4 w okolicach czerwca 2007 roku. Niewiele później została wydana wersja 1.0, która stanowiła most pomiędzy CI a Kohaną. Więcej na wikipedia.org

To tak słowem wstepu jakby ktoś nie wiedział co to kohana :). W artykule postaram się zaprezentować kilka zmian
jakie wprowadzili programiści w nowej wersji KohanaPHP 3.0.

Struktura katalogów

Pierwsza ze zmian jaką wprowadzili developerzy można odrazu zauważyć wchodząc do katalogu application. Widzimy tam całkiem nową strukture katalogów.

/classes zastępuje nam stary dobry katalog controllers (czyli serce aplikacji) /config pliki konfiguracyjne /view bez zmian, tak samo jak w poprzedniej wersji /logs katalog z logami /cache pliki cache /i18n pliki językowe

Czyli jak widzimy znikneły nam katalogi controllers (który został zastąpiony classes), libraries i modules. Otóż teraz programista może stworzyć te katalogi w folderze classes.

Nowe nazwy klas

Teraz nazwy klas mają dokładnie odzwierciedlać położenie pliku oraz zaczynać się z dużej litery.
Kontroler o nazwie 'login' utworzony w katalogu:
classes/controller/login.php
Nazwa klasa tego kontrolera
Controller_Login
Czyli zamiast '/' wstawiamy '_'. I analogicznie przykładowe nazwy:
classes/controller/login.php Controller_Login classes/model/Login.php Model_Login classes/auth.php Auth

Konfiguracja aplikacji

Większkość opcji została przeniesiona do pliku bootstrap.php. Natomiast w
katalogu config możemy tworzyć dodatkowe konfiguracje dla naszej aplikacji
Przykładowo w pliku bootstrap.php możemy ustawić:
errors obsługa błędów profile benchmarking aplikacji caching cachowanie plików charset domyślne kodowanie znaków base_url podstawowy adres dla aplikacji index_file plik aplikacji (default index.php), jeżeli używamy mod_rewrite to FALSE cache_dir katalog pliów cache

Przykładowa konfiguracja

Kohana::init(array('base_url' => 'www.domena.pl', 'index_file' => false));

Dodatkowo możemy tworzyć konfiguracje w katalogu config w zależności od potrzeb.
Przykładowo tworzymy plik config/jakastamkonfiguracja.php a w nim:
<?php defined('SYSPATH') or die('No direct script access.'); return array( 'setting' => 'value', 'options' => array( 'foo' => 'bar', ), );

Wyciągnąć dane możemy w następujący sposób:

Pobieramy całą konfiguracje
$config = Kohana::config('jakastamkonfiguracja'); $options = $config['options'];
Chcemy pobrać 'options' to robimy to tak
$options = Kohana::config('jakastamkonfiguracja.options');
Pobranie wartośc z klucza 'foo'
$foo = Kohana::config('jakastamkonfiguracja.options.foo');
Lub, jeśli wolisz w sposób bardziej obiektowy sposób to:
$options = Kohana::config('jakastamkonfiguracja')->options;

Wykonywanie żądań

W kohanie 3.0 zrezygnowano z __constructor() oraz __destructor(). Nie trzeba także wywoływać konstruktora nadrzędnego, gdyż dzieje się to automatycznie.

W nowej wersji wprowadzono akcje (action_) rozumiemy przez to metode controllera o nazwie action_login gdzie login jest nazwą wywoływanej akcji. W tym przypadku wszystkie metody nie zaczynające się od action_ są niedostępne dla użytkownika co zwiększa bezpieczeństwo.

Przykładowo
http://domena.pl/user/login
Wywoła metode action_login z controllera Controller_User

Linki
Pliki do pobrania
Dokumentacja


Podobne tematy:
Co nowego daje Path 1,05 i CORE ?
Co nowego w Protel DXP ?
Co nowego w Nowe Gadu-Gadu 9215?
Co nowego w THE PIMPS
Nowości na forum Czyli co nowego po zmianie skryptu
Co nowego Nissan pokazał na Targach w Hanowerze?