====== PHP ======
===== Instalacja =====
Instalacja PHP na [[debian|Debianie]] przebiega następująco:
apt-get update
apt-get install php8.0
gdzie 8.0 to nasza wersja PHP. Bieżącą wersję w repozytorium możemy znaleźć poleceniem ''apt-cache search php''.
Jeżeli będziesz używać PHP z [[MySQL]]'em (np. przez [[php_mysqli]]), zainstaluj też to (lub odpowiednik):
apt-get install php8.0-mysql
===== Upgrade wersji =====
W ogólnym przypadku wystarczy:
apt-get update
apt-get upgrade
Zostanie zainstalowana najnowsza wersja z dystrybucji. Bardzie złożona sytuacja występuje, gdy repozytorium naszej dystrybucji nie zawiera najnowszej wersji PHP. Oczywiście jednym z rozwiązań jest aktualizacja całego systemu operacyjnego, ale można też wgrać tylko dodatkową wersję PHP. Zaczynamy od dodania repozytoriów.
apt-get install lsb-release apt-transport-https ca-certificates
wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list
apt-get install php8.0
Jeżeli nie wiesz jaką masz wersję Debiana, zawołaj: ''lsb_release -sc''.
Bez obaw, Twoje strony wciąż obsługuje stara wersja PHP. W [[Apache]] można się między nimi przełączać, tak jak między jakimikolwiek modami:
a2dismod php7
a2enmod php8.0
service apache2 restart
ale zanim włączysz nową wersję, sprawdź czy na pewno Twoje skrypty działają. Można zawołać z konsoli ''php -l nazwa-skryptu.php'', aby sprawdzić poprawność składni. Zajrzyj też do ''/etc/php/8.0/apache2/php.ini'' i ''/etc/php/8.0/cli/php.ini'' i poustawiaj odpowiednie opcje. Ja najczęściej włączam:
short_open_tag=On
extension=mysqli
Zainstaluj potrzebne rozszerzenia, np.:
apt-get install php7.4-mysql # dla mysqli
apt-get install php7.4-xml