Vianoce v ITnetwork sú tu! Dobí si teraz kredity a získaj až 80 % extra kreditov na e-learningové kurzy ZADARMO. Zisti viac.
Hľadáme nové posily do ITnetwork tímu. Pozri sa na voľné pozície a pridaj sa k najagilnejšej firme na trhu - Viac informácií.

2. diel - Inštalácia Symfony a IDE

V minulej lekcii, Úvod do Symfony frameworku pre PHP , sme sa uviedli do PHP frameworku Symfony. V dnešnom tutoriálu sa pozrieme na jeho inštaláciu ako základ našej aplikácie. Túto inštaláciu vykonáme pomocou nástroja Composer, buď samostatne pomocou príkazového riadku, alebo v rámci PhpStorm IDE tak, aby sa do vývoja mohli pustiť aj začínajúci užívatelia, ktorí sa práve doučili OOP a chcú skúsiť používať nejaký PHP framework.

Pre istotu ešte raz pripomínam, že pre prácu s frameworkom je potreba dobre poznať objektovo orientované programovanie v PHP. Pokiaľ ho dostatočne neovládate, prečítajte si prosím najprv miestni tutoriál. :)

Potrebný softvér

Prvá vec, ktorú je potrebné urobiť, je pripraviť správny softvér. Určite viete, že pre vývoj webových aplikácií v PHP potrebujete webový server a ďalej tiež budeme potrebovať nejakú tú databázu. Pre začiatočníkov k inštalácii odporúčam nejaký kompletný balíček, napr. XAMPP.

Pre aktuálne Symfony, teda verziu 4.1.x, budete potrebovať PHP 7.1 a vyššie!

Následne pre tých, čo sú zvyknutí písať v textovom editore ako napríklad PSPad, by som odporučil prejsť skôr na nejaké IDE, ktoré pri práci s frameworkom uľahčí jeho používanie. Avšak nie je to podmienkou. Ja tu pre demonštráciu inštalácie ukážem použitie PhpStorm, jedného z najrozšírenejších profesionálnych IDE. Uvidíte sami, že je to s ním krásne jednoduché.

Ak sa pýtate, prečo nepoužijem napr. Populárne NetBeans, tak v čase písania kurze ešte nemajú kompletnú podporu verzie PHP 7.1+, ktorá je ale pre najnovšieho Symfony vyžadovaná.

Ďalej pre samotnú inštaláciu použijeme snáď všeobecne najrozšírenejší spôsob inštalácie v PHP a to nástroj Composer. Symfony na ňom stavia ako samotnú inštaláciu, tak i ďalšie rozšírenie. Teda je potrebné ho tiež stiahnuť a nainštalovať alebo to celé nechať na PhpStorm, ktorý má aj zabudované prostriedky priamo pre prácu s týmto nástrojom. Voľba je opäť na vás ;)

Vytvorenie nového projektu

Začneme teda vytvorením nového projektu v Symfony. Môžete si zvoliť jeden z nasledujúcich spôsobov.

Možnosť 1: Inštalácia pomocou Composer

Ako som už spomínal, Composer je nástroj tretích strán pre inštaláciu a správu závislostí projektov v PHP všeobecne. Ak ste ho nikdy nepoužívali, nainštalujte ho pomocou miestneho článku Composer. Keď už máte Composer pripravený, stačí si vytvoriť priečinok, kde chcete vytvoriť nový projekt, napr. `Hello-world", a v príkazovom riadku z nej spustiť konkrétny príkaz, ktorý zariadi celú inštaláciu Symfony a skontroluje aj potrebné závislosti.

Ak neviete, ako spustiť príkazový riadok v nejakej zložke, robí sa to kliknutím kamkoľvek do priečinka v prieskumníkovi Windows, stlačením Shift a následne kliknutím pravým tlačidlom a vybraním možnosti "Otvoriť tu okno príkazového riadku" (prípadne okno PowerShell).

Nový projekt teda vytvoríme jediným príkazom:

composer create-project symfony/website-skeleton hello-world

Týmto príkazom sa vytvorila základná štruktúra projektu v zložke hello-world/ a to podľa Symfony kostry webové aplikácie website-skeleton. Tá slúži ako dobrý základ pre nový projekt v tomto frameworku.

Inštalácia môže trvať dlhšiu dobu.

Možnosť 2: Inštalácia pomocou PhpStorm

Ak ste sa rozhodli pracovať v PhpStorm a máte všetko nainštalované, zostáva už len vytvorenie samotného projektu. To vykonáme podobne ako v každom inom IDE, kliknutím na tlačidlo pre vytvorenie nového projektu.

V novo otvorenom okne sa zobrazí sprievodca a my vyberieme ako typ projektu Composer Project.

Vytvorenie PHP Symfony projektu - Základy frameworku Symfony pre PHP

V ďalších krokoch:

  1. Vyplníme názov projektu, napr. hello-world, spoločne s cestou, kam sa má uložiť.
  2. Ďalej nastavíme, že chceme stiahnuť Composer a cestu k nášmu PHP interpretru (možno detekovať aj automaticky).
  3. V neposlednom rade zvolíme, čo budeme pomocou Composer vlastne inštalovať. V našom prípade to teda bude Symfony a to konkrétne kostra webové aplikácie website-skeleton. Tá slúži ako dobrý základ pre nový projekt v tomto frameworku.

Týmto vytvoríme prvý projekt postavený na Symfony v rámci PhpStorm IDE pomocou nástroja Composer.

Inštalácia môže trvať dlhšiu dobu.

Spustenie projektu

Keď už máme vytvorený nový projekt s nainštalovaným Symfony, je načase ho spustiť v rámci nášho webového servera a pozrieť sa na výsledok. Opäť tu ale máte na výber.

Možnosť 1: Spustenie pomocou vstavaného servera

Najjednoduchšie možnosť, ktorá nevyžaduje žiadnu ďalšiu konfiguráciu, je spustenie pomocou vstavaného webového servera v PHP. Stačí zavolať nasledujúci príkaz v priečinku projektu:

php -S 127.0.0.1:8000 -t public

V rámci inštalovanej šablóny website-skeleton je v projekte k dispozícii aj webový server vstavaný v Symfony, ktorý spustíme v zložke projektu príkazom:

php bin/console server:run

Môžeme si teda vybrať, ktorý server budeme používať.

V PhpStorm možné pre oboje nastaviť runtime konfiguráciu.

Možnosť 2: Spustenie pomocou Apache servera

Je jasné, že pre spustenie projektu pod Apache serverom je potreba, aby server bežal, a aby zložka projektu bola umiestnená niekde, kam má Apache prístup. Čo už tak jasné nie je je, že pred samotným spustením budeme musieť nastaviť ešte pár presmerovanie.

Smerovanie

Najprv si treba uvedomiť, že adresárová štruktúra projektu je stavaná tak, že jeho zobrazenie prebieha až po vstupe do zložky public/, kde sa nachádza súbor index.php. My ale chceme, aby výsledná adresa začínala názvom projektu (napr. http://localhost/hello-world/) a pokračovala konkrétne peknú URL. Teda, žiadne public tu nechceme a navyše všetky URL adresy chceme smerovať na ten istý jeden index.php.

Elegantný cesta, ako toto zariadiť v rámci Apache servera, je nastaviť smerovanie pomocou .htaccess súborov, v našom prípade pomocou dvoch. Jeden nás automaticky "presunie" do zložky public/ a teda bude koreňová URL adresa len http://localhost/hello-world/. Druhý potom zariadi správne smerovanie na súbor index.php už v rámci samotnej zložky public/.

Začneme teda vytvorením prvého súboru .htaccess v adresári projektu, do ktorého vložíme nasledujúci kód:

<IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteRule ^$ public/ [L]
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteCond %{REQUEST_URI} !^public/
        RewriteRule ^(.*)$ public/$1
</IfModule>

Druhý súbor už nebudeme vytvárať sami, ale nainštalujeme si ho opäť pomocou nástroja Composer tým, že spustíme nasledujúci príkaz v koreňovom priečinku projektu:

composer require symfony/apache-pack

Výsledok

Či už ste sa rozhodli pre ktorúkoľvek metódu, teraz sa už dostávame k dnešnému výsledku. Po zadaní príslušnej URL adresy do webového prehliadača by sa vám malo zobraziť podobné okno, ako vidíte nižšie na obrázku. Pre vstavaný server bude URL http://127.0.0.1:8000/ a pre Apache http://localhost/hello-world/

Sprevádzkovaný Symfony framework - Základy frameworku Symfony pre PHP

Pokiaľ toto okno vidíte, potom ste všetko urobili správne a ste tým pádom na dobrej ceste k naučenie sa Symfony ak ďalšej lekcii, kde budeme už aj niečo programovať.

Ak sa vám táto stránka z nejakého dôvodu nezobrazuje, odporúčam znovu poctivo prejsť návod alebo treba skúsiť iný spôsob inštalácie či spustenia. A keď už naozaj nebudete vedieť kadiaľ kam, môžete mi vždy napísať do komentárov pod článok ;)

Nabudúce, v lekcii Prvé aplikácie v Symfony , začneme vytvárať svoju prvú aplikáciu v Symfony. Ja prezradím, že sa bude jednať o jednoduchú kalkulačku, takže sa máte na čo tešiť! :)


 

Mal si s čímkoľvek problém? Stiahni si vzorovú aplikáciu nižšie a porovnaj ju so svojím projektom, chybu tak ľahko nájdeš.

Stiahnuť

Stiahnutím nasledujúceho súboru súhlasíš s licenčnými podmienkami

Stiahnuté 161x (14.55 MB)
Aplikácia je vrátane zdrojových kódov v jazyku PHP

 

Predchádzajúci článok
Úvod do Symfony frameworku pre PHP
Všetky články v sekcii
Základy frameworku Symfony pre PHP
Preskočiť článok
(neodporúčame)
Prvé aplikácie v Symfony
Článok pre vás napísal Jindřich Máca
Avatar
Užívateľské hodnotenie:
1 hlasov
Autor se věnuje převážně webovým technologiím, ale má velkou zálibu ve všem vědeckém, nejen ze světa IT. :-)
Aktivity