PHPDevs

Projekt obiektowy z Composerem i Twigiem? Czytaj!

Wstęp do PHP > Lekcja 6

Instalacja PHP

Aktualizacja 30.11.2017

Właśnie wydane zostało PHP 7.2. Zalecam zawsze korzystanie z najnowszej stabilnej wersji, a więc sugeruję instalację PHP 7.2, a nie opisanej w tej lekcji wersji PHP 7.1. Proces instalacji przebiegać powinien identycznie. Dokładny opis zmian w stosunku do wersji 7.1 dostępny jest na stronach PHP.

Przejdźmy do czegoś jeszcze istotniejszego. Zainstalujmy interpreter PHP, potrzebny nam do nauki. W chwili pisania tych słów najnowszą wersją PHP jest 7.1. Sprawdzisz to zawsze na stronie pobierania, a tutaj zobaczysz do kiedy wspierane są konkretne wersje.

Której wersji się uczyć? Tak naprawdę różnice nie są wielkie, w poszczególnych wersjach jest to dodanie lub usunięcie różnych rzeczy. Uczysz się więc ogólnie języka, a do poszczególnej wersji możesz się dostosować. W mojej opinii jednak nie ma sensu pobierać czegoś starszego, co już zostało zaktualizowane, dlatego kurs będzie prowadzony na najnowszej dostępnej wersji - 7.1. Jeśli jednak ty dysponujesz nieco starszą nie przejmuj się, większość rzeczy powinna działać tak samo. Poprzez "nieco starszą" mam na myśli użycie PHP tak w wersji 5.6, jeśli będziesz próbował pisać w dużo wcześniejszych wersjach to nic na to nie poradzę (mogę jedynie stanowczo odradzić). A jeśli faktycznie w ostatnich wersjach w danej kwestii wystąpiły jakieś zmiany, będę starał się wspomnieć o tym w kursie.

Oprócz samego interpretera wygodnie byłoby mieć też jakiś serwer www. Oczywiście jak już wspominałem wcześniej, PHP może działać w samej konsoli. Co więcej po instalacji PHP dostępny mamy prosty wbudowany serwer. Jednak dla większej wygody pracy polecałbym Ci dodatkowo zainstalować serwer Apache lub Nginx (dwa najpopularniejsze serwery www). Baza MySQL będzie potrzebna gdzieś w dalszej części kursu, więc na razie nie będę o niej zbyt wiele mówił - jeśli również zainstalujesz to nic się nie stanie, ale na razie z niej nie skorzystamy.

Linux

W systemach Linux z rodziny Ubuntu/Debiana menadżerem pakietów jest apt i to przy jego pomocy instalujemy potrzebne oprogramowanie - w przypadku innych dystrybucji odszukaj właściwy sposób instalacji. Moglibyśmy zapewne zrobić to przez tryb graficzny, ale żeby było bardziej “profesjonalnie” zrobimy to z poziomu terminala :)

Zobaczmy więc kontrolnie informacje na temat pakietu PHP:

I czeka nas niezbyt miłe zaskoczenie... Widzimy, że w zasadzie jest to pakiet php7.0, czyli wersja PHP jak nietrudno się domyślić to 7.0, a przecież my widzieliśmy na stronie PHP, że dostępna jest 7.1 i o co tu chodzi? Cóż, jeśli dłużej korzystasz z systemu Linux to pewnie już sam zauważyłeś, że dość często pakiety z oficjalnych repozytoriów nie są najbardziej aktualne. Moglibyśmy teraz ręcznie pobrać i zbudować sobie odpowiednią wersję PHP, ale to nie jest zbyt wygodne. Co więc zrobić?

Możemy dodać własne repozytorium pakietów (PPA). Często aktualizowanym jest to PPA: https://launchpad.net/~ondrej/+archive/ubuntu/php. Dodajmy więc je do systemu (add-apt-repository z potwierdzeniem klawiszem Enter) i zaktualizujmy listę pakietów (apt update). Gdybyśmy w jakimś momencie zostali poproszeni przez sudo o podanie hasła to oczywiście to robimy i zatwierdzamy Enterem - większość operacji jakie wykonujemy wymaga uprawnień roota.

Sprawdźmy ponownie i... jest, mamy dostępne PHP 7.1!

Zainstalujmy (zatwierdzając pytanie klawiszem Enter).

Mamy wreszcie to co chcieliśmy - informacje na temat PHP możemy sprawdzić wydając polecenie php -v.

Oprócz tego wspominałem o serwerze www, więc zainstalujmy go (chyba że będziesz korzystał z tego wbudowanego w PHP lub uruchamiał skrypty w konsoli to nie wykonuj tego kroku). Jeśli uważnie czytałeś komunikaty to być może zauważyłeś, że podczas instalacji pakiet php7.1 sugerował, aby zainstalować Apache. Możemy wybrać ten serwer, jednak ja wybiorę Nginxa (jest lżejszy i jego składnia konfiguracji bardziej mi odpowiada).

Gotowe. Po wejściu na adres http://localhost (inaczej 127.0.0.1, odpytanie własnego komputera) w przeglądarce internetowej powinieneś ujrzeć stronę powitalną. Nasz serwer www działa, jednak nie zadziałają jeszcze na nim skrypty PHP. Przejdziemy do tego w dalszej części.

Windows

A co z Windowsem? Możesz ręcznie pobierać i instalować wszystko osobno lub pobrać jakąś gotową paczkę np. XAMPP lub WAMP. Ich instalacja jest prosta, standardowo przechodzimy do kolejnych kroków. Przykładowo XAMPPa możemy pobrać stąd. Jak już wspomniałem w tym kursie będę starał się zawsze bazować na najnowszej możliwej wersji PHP, stąd polecam wybrać ostatnią paczkę z PHP 7.

Jedyne nad czym można na moment się zatrzymać to lista rzeczy do zainstalowania. Jeśli zainstalujesz wszystko to oczywiście nic złego się nie stanie, ale takie moim zdaniem minimum widzisz na screenie poniżej. Baza danych MySQL przyda nam się później, podobnie phpMyAdmin, które jest graficznym narzędziem ułatwiającym zarządzanie i pracę z nią (rzecz jasna nie jest konieczne, baza sama w sobie działa bez niego).

Po zainstalowaniu i uruchomieniu programu powinieneś zobaczyć jego panel kontrolny. Jedyne co należy zrobić, aby uruchomić serwer www z PHP to kliknąć przycisk "Start" przy Apache. Podobnie można uruchomić także bazę MySQL (czy inne usługi, jeśli zainstalowałeś), ale na razie nie będzie nam potrzebna, więc tego nie zrobiłem. Gdy usługa wystartuje jej nazwa powinna zapalić się na zielono, a obok pojawić się numery portów i identyfikatory procesów. Przetestować działanie możemy wejściem na adres http://localhost - powinniśmy zobaczyć stronę powitalną XAMPPa.

Powszechny problem

Jeśli u Ciebie uruchomienie nie powiedzie się (zobaczysz błędy koloru czerwonego) może to oznaczać, że masz zajęte domyślne porty, na których działa serwer www (port 80 i 443). Takie porty może blokować wiele usług, w tym przykładowo Skype. W takim przypadku należy znaleźć aplikację zajmującą port i ją wyłączyć lub zmienić porty na których działać ma serwer. Przeczytaj więcej o problemie na: Forum Pasja informatyki, Stack Overflow.

XAMPP na Linuxie?

Jeśli zerknąłeś na stronę XAMPPa lub innego pakietu tego typu być może znalazłeś również jego wersję na Linuxa i ta sprawa zaprząta Ci głowę. Wyjaśnię więc od razu, że moim zdaniem instalacja takiego gotowego programu nie ma sensu. W systemie Linux wystarczy nam praktycznie jedno polecenie (nie wliczając dodawania PPA), aby zainstalować sobie to czego potrzebujemy i w jakich wersjach chcemy. Nie rozumiem więc, jaki sens miałoby pobieranie wszystkiego razem w takim pakiecie.

Ciekawostka

Być może zastanawia Cię to, że musisz u siebie na komputerze instalować różne programy, aby móc cokolwiek zacząć. Samo IDE/edytor raczej nie dziwi, ale to jeszcze interpreter PHP, to serwer, baza... Może dałoby się tego uniknąć? Oczywiście, jednak nie jest to temat na początek kursu. Jeśli masz już jakąś wiedzę lub po prostu masz ochotę na ciekawostkę, to zapoznaj się z technologiami Vagrant oraz Docker. Pierwsza z nich opiera się na wirtualnych maszynach, druga tworzy wirtualne kontenery z obrazów. Obydwie prowadzą do tego, że finalnie potrzebne oprogramowanie instalujemy w takim kontenerze lub wirtualnej maszynie. Być może wrócimy do tego zagadnienia gdzieś w bardziej zaawansowanym etapie kursu, na razie uważam jednak, że w zupełności wystarczy Ci lokalna instalacja wszystkiego.

Jeszcze inną opcją na rozwiązanie opisanej powyżej niedogodności jest "wrzucanie" wszystkiego na bieżąco na hosting lub inny serwer, na którym już zainstalowane jest PHP i potrzebne do działania rzeczy. Jednak to nie jest wygodne. W mojej ocenie na hostingu powinieneś publikować dopiero gotową stronę/skrypt. Można co prawda ustawić w kliencie FTP (w skrócie mówiąc: program do przesyłania plików na serwer) automatyczną ciągłą synchronizację plików na serwer. Jak wspominałem, nie uważam tego rozwiązania za wygodne i nie polecam na co dzień pracy w taki sposób. Więcej o wyborze hostingu i ogólnie publikowaniu strony w sieci również postaram się napisać w dalszych rozdziałach.

Poprzednia lekcja Następna lekcja

Udostępnij

  • Facebook
  • Twitter
  • Google+

Komentarze