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.
V ďalších krokoch:
- Vyplníme názov projektu, napr.
hello-world
, spoločne s cestou, kam sa má uložiť. - Ďalej nastavíme, že chceme stiahnuť Composer a cestu k nášmu PHP interpretru (možno detekovať aj automaticky).
- 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/
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