Učimo vas kako izraditi web stranicu i programirati
 



Phalcon - PHP Framework

Osnovne postavke

Da bi Phalcon framework ispravno radio potrebno je definirati nekoliko osnovnih postavki.



Directory stuktura

Za jednostavne aplikacije sa jednim modulom potrebno kreirati directory strukturu kao na slici.

Phalcon folders directories

.htaccess fajlovi

Potrebno je staviti dva .htaccess fajla:

/phalcon/.htaccess
- svaki URL prosljeđuje u public/ odnosno public/index.php
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule ^$ public/     [L]
    RewriteRule (.*) public/$1 [L]
</IfModule>
/phalcon/public/.htaccess
AddDefaultCharset UTF-8

<IfModule mod_rewrite.c>
    RewriteEngine On
    
    ### NICE URLS ###
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php?_url=/$1 [QSA,L]
</IfModule>


Bootstrap index.php fajl

Također je potrebno postaviti /public/index.php fajl koji služi kao bootstrap fajl. U njemu su definirane osnovne postavke frameworka kao npr. direktoriji za controller, model i view fajlove. Preko njega se pokreće cijeli framework.

/phalcon/public/index.php
<?php

try {

    //REGISTER AUTOLOADERS
    $loader = new \Phalcon\Loader();
    $loader->registerDirs(array(
        '../app/controllers/',
        '../app/models/'
    ))->register();
    
    
    //REGISTER SERVICES
    //Create a DI (Dependency Injection)
    $di = new Phalcon\DI\FactoryDefault();

    //Setup the view component
    $di->set('view', function(){
        $view = new \Phalcon\Mvc\View();
        $view->setViewsDir('../app/views/');
        return $view;
    });

    //Setup a base URI
    $di->set('url', function(){
        $url = new \Phalcon\Mvc\Url();
        $url->setBaseUri('/');
        return $url;
    });

    //HANDLE THE REQUEST
    $application = new \Phalcon\Mvc\Application($di);

    echo $application->handle()->getContent();

} catch(\Phalcon\Exception $e) {
     echo "PhalconException: ", $e->getMessage();
}

Ako promotrimo izraz
$application = new \Phalcon\Mvc\Application($di); vidimo da će naša aplikacija ovisiti o Dependancy Injection $di. Ustvari, $di je objekt koji sadrži neke početne objekte bez kojih aplikacija ne može raditi. Ti početni objekti su 'view' i 'url', a koji se u Phalconu još nazivju i servisi.




| Uvjeti Korištenja | Zaštita Privatnosti | Kontakt |