Nainstalujte PHP 8.1 a nastavte lokální vývojové prostředí na Ubuntu
Předchozí verze tohoto tutoriálu byla napsána alenaholligan.
Úvod
PHP je populární, open-source skriptovací jazyk na straně serveru, navržený pro vývoj webu a pohání významnou část internetu od blogů a e-shopů až po rozsáhlé aplikace. S každým novým vydáním PHP přináší lepší výkon, bezpečnost a moderní vývojové funkce, které pomáhají vývojářům vytvářet robustní a škálovatelný software.
PHP 8.1 je stabilní vydání s dlouhodobou podporou, které přináší významná vylepšení a nové funkce jazyka při zachování spolehlivosti. Instalace PHP 8.1 na Ubuntu zajistí, že vaše lokální vývojové prostředí bude aktuální, bezpečné a kompatibilní s často používanými frameworky a platformami, jako jsou WordPress, Laravel a vlastní PHP aplikace.
Tento tutoriál vás provede instalací PHP 8.1 na Ubuntu, jeho konfigurací s Apache nebo Nginx, nastavením základních PHP rozšíření a instalací Composeru pro správu závislostí. Také se naučíte, jak ověřit svou instalaci a řešit běžné problémy.
Nasazujte své PHP aplikace z GitHubu pomocí platformy Linux-Console.net App. Nechte Linux-Console.net, aby se postaral o škálování vaší aplikace.
Hlavní body
Instalace PHP 8.1 na Ubuntu 22.04: Ubuntu 22.04 LTS zahrnuje PHP 8.1 ve svých výchozích repozitářích, což vám umožňuje nainstalovat stabilní, dlouhodobě podporovanou verzi PHP pomocí
aptbez potřeby třetích stran PPA. To zajišťuje předvídatelné aktualizace, bezpečnostní opravy a kompatibilitu s moderními PHP frameworky.Základní PHP rozšíření pro reálné projekty: Většina produkčních PHP aplikací spoléhá na rozšíření jako
mysql,curl,xml,mbstring,zip,gdabcmath. Jejich včasná instalace předchází chybám při běhu a zajišťuje kompatibilitu s frameworky, jako jsou Laravel, Symfony a WordPress.Volba Apache nebo Nginx pro vývoj v PHP: Apache může spouštět PHP přímo pomocí
mod_php, zatímco Nginx vyžaduje PHP‑FPM pro zpracování požadavků. Oba přístupy fungují dobře pro lokální vývoj, ale PHP‑FPM lépe odráží moderní produkční prostředí a lépe škáluje při zátěži.Composer jako základ moderních pracovních postupů v PHP: Composer spravuje závislosti projektů prostřednictvím
composer.jsonacomposer.lock, což zajišťuje konzistentní sestavení napříč počítači. Je nezbytný pro instalaci frameworků, generování autoloaderů a udržování spolehlivých verzí závislostí v kolaborativních PHP projektech.Konfigurace PHP specificky pro vývoj: Vývojová prostředí těží z podrobného zobrazování chyb, vyšších limitů paměti a delší doby běhu. Úprava těchto nastavení v
php.inipomáhá rychle odhalovat chyby během vývoje, ale vždy je nutné je při nasazení do produkce vrátit zpět.Řešení problémů a ověřování jsou součástí nastavení: Ověření PHP pomocí
php -v, kontrola načtených rozšíření a kontrola logů Apache, Nginx nebo PHP‑FPM jsou klíčové kroky. Většina problémů s nastavením vzniká kvůli chybějícím rozšířením, oprávněním nebo nesprávně nakonfigurovaným direktivám webového serveru.
Předpoklady
K dokončení tohoto tutoriálu potřebujete:
- Místní počítač nebo virtuální server s nainstalovaným Ubuntu (kompatibilní s Ubuntu 22.04 LTS a novějšími verzemi)
- Administrátorský (sudo) přístup k počítači
- Aktivní připojení k internetu
- Základní znalost příkazového řádku
Pokud nastavujete nový server Ubuntu, podívejte se na náš průvodce počátečním nastavením serveru s Ubuntu.
Krok 1 — Nastavení PHP 8.1
Dokončíte instalaci a nastavení prostřednictvím příkazového řádku, což je ne-grafický způsob, jak komunikovat s počítačem. Místo klikání na tlačítka budete zadávat text a získávat zpětnou vazbu od počítače také prostřednictvím textu.
Příkazový řádek, také známý jako shell nebo terminál, vám může pomoci upravovat a automatizovat mnoho úkolů, které na počítači provádíte každý den, a je nezbytným nástrojem pro vývojáře softwaru. Existuje mnoho příkazů terminálu, které se můžete naučit a které vám umožní dělat výkonnější věci. Článek Úvod do Linuxového terminálu vám může pomoci se s terminálem lépe seznámit.
Poznámka: Pokud jste v Ubuntu noví, zvažte prohlédnutí naší dokumentace k Ubuntu pro další pokyny k administraci systému.
Na Ubuntu můžete aplikaci Terminál najít kliknutím na ikonu Ubuntu v levém horním rohu obrazovky a zadáním terminal do vyhledávacího pole. Kliknutím na ikonu aplikace Terminál ji otevřete. Alternativně můžete stisknout současně klávesy CTRL, ALT a T na klávesnici, čímž se aplikace Terminál automaticky otevře.
Poznámka: Na Ubuntu 22.04 LTS je PHP 8.1 k dispozici v základních repozitářích. Když nainstalujete PHP bez určení verze na Ubuntu 22.04, systém automaticky nainstaluje PHP 8.1.
Pokud potřebujete spravovat více verzí PHP nebo nainstalovat jinou verzi, zvažte použití phpenv nebo phpbrew pro správu verzí.
Spusťte následující příkazy pro aktualizaci seznamu dostupných balíčků a poté nainstalujte PHP 8.1:
sudo apt updatesudo apt install --no-install-recommends php8.1Přepínač --no-install-recommends zajistí, že nebudou instalovány jiné balíčky, například webový server Apache.
Zkontrolujte informace o verzi PHP pomocí následujícího příkazu:
php -vDostanete výstup jako tento:
PHP 8.1.2-1ubuntu2.22 (cli) (built: Jul 15 2025 12:11:22) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.2, Copyright (c) Zend Technologies
with Zend OPcache v8.1.2-1ubuntu2.22, Copyright (c), by Zend Technologies
Tento setup byl testován na Ubuntu 22.04 LTS s využitím balíčků PHP 8.1 z oficiálních repozitářů Ubuntu.
Nainstalujte nezbytné PHP rozšíření pro webový vývoj:
sudo apt install -y php8.1-cli php8.1-common php8.1-mysql php8.1-zip php8.1-gd php8.1-mbstring php8.1-curl php8.1-xml php8.1-bcmathTento příkaz nainstaluje následující moduly:
php8.1-cli- příkazový interpreter, užitečný pro testování PHP skriptů z příkazového řádku nebo pro provádění obecných úloh skriptování v shelluphp8.1-common- dokumentace, příklady a běžné moduly pro PHPphp8.1-mysql- pro práci s databázemi MySQLphp8.1-zip- pro práci s komprimovanými souboryphp8.1-gd- pro práci s obrázkyphp8.1-mbstring- používá se k práci s řetězci obsahujícími znaky mimo ASCIIphp8.1-curl- umožňuje provádět HTTP požadavky v PHPphp8.1-xml- pro práci s XML datyphp8.1-bcmath- používá se při práci s přesnými desetinnými čísly
Konfigurační soubory PHP jsou uloženy v /etc/php/8.1/. Hlavní konfigurační soubor je php.ini, který může být umístěn v různých adresářích v závislosti na vašem nastavení:
- Konfigurace CLI:
/etc/php/8.1/cli/php.ini - Konfigurace Apache:
/etc/php/8.1/apache2/php.ini(pokud je Apache nainstalováno) - Konfigurace PHP-FPM:
/etc/php/8.1/fpm/php.ini(pokud je PHP-FPM nainstalováno)
Ověřit nainstalované rozšíření:
php -mTento seznam zobrazuje všechny načtené PHP moduly. Pokud php -v ukazuje jinou verzi, než očekáváte, může být nainstalováno více verzí PHP. Použijte php8.1 -v pro ověření konkrétně PHP 8.1.
Nainstalovali jste PHP a ověřili verzi, kterou máte spuštěnou. Také jste nainstalovali všechny potřebné PHP moduly a byli schopni vypsat moduly, které máte načtené.
Krok 2 — Konfigurace PHP s Apache
Nainstalujte modul Apache pro PHP:
sudo apt install libapache2-mod-php8.1Povolte modul a restartujte Apache:
sudo a2enmod php8.1
sudo systemctl restart apache2Pochopení mod_php: Modul mod_php vkládá PHP přímo do procesu Apache. Když Apache obdrží požadavek na PHP soubor, zpracuje ho interně pomocí integrovaného PHP interpretu. To se liší od Nginx, který vyžaduje samostatnou službu PHP-FPM. Příkaz a2enmod vytváří symbolický odkaz v /etc/apache2/mods-enabled/ pro aktivaci modulu.
Ověřte, že Apache zpracovává PHP správně, vytvořením testovacího souboru v kořenovém adresáři dokumentů Apache (obvykle /var/www/html):
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.phpNavštivte ve svém prohlížeči http://localhost/info.php. Měli byste vidět stránku s informacemi o konfiguraci PHP. Pro bezpečnost odstraňte tento soubor po testování:
sudo rm /var/www/html/info.phpŘešení problémů s Apache a PHP
Pokud Apache nenaběhne po instalaci mod_php:
Zkontrolujte chybový záznam Apache:
sudo tail -20 /var/log/apache2/error.logMezi běžné problémy patří:
- Konfliktní PHP moduly: Pokud máte více verzí PHP, nejprve vypněte ostatní PHP moduly pomocí
sudo a2dismod php7.4(pokud jsou přítomny) - Chyby syntaxe v konfiguraci Apache: Spusťte
sudo apache2ctl configtestpro kontrolu
Pokud navštívíte localhost a uvidíte „It works!“, ale PHP soubory se zobrazují jako prostý text:
To znamená, že Apache nespouští PHP. Zkontrolujte:
- Ověřte, zda je modul povolen:
apache2ctl -M | grep php- Pokud se nic nezobrazí, modul není načten. Znovu jej povolte:
sudo a2enmod php8.1
sudo systemctl restart apache2- Zkontrolujte, zda má váš PHP soubor správnou příponu (
.php) a obsahuje PHP kód
Pokud se vám zobrazí chyba 403 Zakázáno:
Zkontrolujte oprávnění souboru:
sudo chown -R www-data:www-data /var/www/html
sudo chmod -R 755 /var/www/htmlPoznámka k zabezpečení: Funkce phpinfo() odhaluje podrobné informace o systému. Nikdy nenechávejte soubory obsahující phpinfo() na produkčních serverech.
Konfigurace virtuálního hostitele Apache
Pro lokální vývoj s vlastními doménami vytvořte virtuální hostitele:
sudo nano /etc/apache2/sites-available/example.local.confPřidejte tuto konfiguraci:
<VirtualHost *:80>
ServerName example.local
DocumentRoot /var/www/example.local
<Directory /var/www/example.local>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>ServerName: Doménové jméno pro tento virtuální hostitelDocumentRoot: Kde jsou umístěny vaše PHP souboryAllowOverride All: Umožňuje souborům.htaccesspřepsat nastavení Apache (potřebné pro frameworky jako Laravel)Require all granted: Umožňuje přístup do adresáře
Vytvořte adresář, povolte stránku a restartujte Apache:
sudo mkdir -p /var/www/example.local
sudo chown -R www-data:www-data /var/www/example.local
sudo a2ensite example.local.conf
sudo systemctl restart apache2Přidejte doménu do svého souboru /etc/hosts pro místní přístup:
echo "127.0.0.1 example.local" | sudo tee -a /etc/hostsVolba mezi Apache a Nginx
Než nakonfigurujete svůj webový server, zvažte, který z nich vyhovuje vašim potřebám:
| Funkce | Apache s mod_php | Nginx s PHP-FPM |
|---|---|---|
| Zpracování PHP | Vložené v procesu Apache | Oddělená služba PHP-FPM |
| Využití paměti | Vyšší (PHP v každém procesu Apache) | Nižší (samostatný procesní pool) |
| Výkon | Vhodné pro nízkou až střední zátěž | Lepší pro vysokou zátěž a současné požadavky |
| Konfigurace | Jednodušší počáteční nastavení | Složitější (vyžaduje konfiguraci PHP-FPM) |
| Podpora .htaccess | Nativní podpora | Nepodporováno (nutno nakonfigurovat v blocích serveru) |
| Provozní použití | Běžné u sdíleného hostingu | Běžné v moderních nasazeních |
| Křivka učení | Jednodušší pro začátečníky | Strmější učební křivka |
| Efektivita zdrojů | Méně účinný při vysokém zatížení | Efektivnější při vysokém zatížení |
Kdy zvolit Apache:
- Znáte Apache nebo potřebujete podporu
.htaccess - Nastavení jednoduchého vývojového prostředí
- Práce s frameworky, které se silně spoléhají na
.htaccess(některé instalace WordPressu) - Upřednostňujete jednodušší počáteční konfiguraci
Kdy zvolit Nginx:
- Potřebujete lepší výkon při vysokém zatížení
- Chcete napodobit moderní výrobní prostředí
- Vytváříte aplikace, které se budou škálovat
- Dáváte přednost modernější architektuře
Oba fungují stejně dobře pro lokální vývoj. Volba často závisí na osobních preferencích nebo stávající infrastruktuře.
Krok 3 — Konfigurace PHP s Nginx
Nainstalujte PHP-FPM (FastCGI Process Manager):
sudo apt install php8.1-fpmSpusťte a povolte PHP-FPM:
sudo systemctl start php8.1-fpm
sudo systemctl enable php8.1-fpmPochopení PHP-FPM a FastCGI: Na rozdíl od Apache mod_php Nginx PHP přímo nezpracovává. PHP-FPM (FastCGI Process Manager) běží jako samostatná služba, se kterou Nginx komunikuje pomocí protokolu FastCGI. FastCGI je binární protokol pro propojení programů s webovými servery – je rychlejší než tradiční CGI, protože udržuje procesy aktivní mezi jednotlivými požadavky.
Když Nginx obdrží požadavek na PHP soubor, přepošle tento požadavek do PHP-FPM prostřednictvím Unix socketu (nebo TCP připojení). PHP-FPM zpracuje PHP kód a vrátí výsledek zpět do Nginxu, který jej následně odešle klientovi. Toto oddělení umožňuje PHP-FPM spravovat vlastní pool procesů, čímž se zlepšuje výkon a správa zdrojů.
Konfigurace serverového bloku Nginx
Vytvořte konfiguraci bloků serveru:
sudo nano /etc/nginx/sites-available/example.localPřidejte tuto konfiguraci:
server {
listen 80;
server_name example.local;
root /var/www/example.local;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}Vysvětlení konfigurace:
root: Adresář, kde se nacházejí vaše soubory PHPlocation ~ \.php$: Shody pro všechny požadavky končící na.phppomocí regulárního výrazuinclude snippets/fastcgi-php.conf: Zahrnuje výchozí FastCGI konfiguraci Nginx (nastavujeSCRIPT_FILENAMEa další požadované proměnné)fastcgi_pass unix:/var/run/php/php8.1-fpm.sock: Unixový socket, na kterém PHP-FPM naslouchá. Tímto způsobem Nginx komunikuje s PHP-FPM. Cesta k socketu je definována v/etc/php/8.1/fpm/pool.d/www.conf
Povolte stránku a otestujte konfiguraci:
sudo mkdir -p /var/www/example.local
sudo chown -R www-data:www-data /var/www/example.local
sudo ln -s /etc/nginx/sites-available/example.local /etc/nginx/sites-enabled/
sudo nginx -tPokud test proběhne úspěšně, restartujte Nginx:
sudo systemctl restart nginxPřidejte doménu do /etc/hosts:
echo "127.0.0.1 example.local" | sudo tee -a /etc/hostsVytvořte testovací PHP soubor:
echo "<?php phpinfo(); ?>" | sudo tee /var/www/example.local/info.phpNavštivte http://example.local/info.php. Měli byste vidět konfigurační stránku PHP. Po ověření odstraňte testovací soubor:
sudo rm /var/www/example.local/info.phpŘešení problémů s Nginx a PHP
Pokud se vám zobrazí chyba „502 Bad Gateway“:
To znamená, že Nginx nemůže komunikovat s PHP-FPM. Zkontrolujte:
- Ověřte, zda PHP-FPM běží:
sudo systemctl status php8.1-fpm- Zkontrolujte, zda je cesta k zásuvce správná. Umístění zásuvky je definováno v
/etc/php/8.1/fpm/pool.d/www.conf:
grep listen /etc/php/8.1/fpm/pool.d/www.confMěli byste vidět něco jako listen=/run/php/php8.1-fpm.sock. Cesta ve vaší konfiguraci Nginx musí přesně odpovídat. Všimněte si, že /var/run je často symbolický odkaz na /run, takže obě cesty fungují.
- Zkontrolujte oprávnění souboru zásuvky:
ls -la /var/run/php/php8.1-fpm.sockSocket by měl být vlastněn uživatelem www-data nebo uživatelem, pod kterým běží Nginx. Pokud jsou oprávnění nesprávná:
sudo chown www-data:www-data /var/run/php/php8.1-fpm.sock- Zkontrolujte chybový záznam Nginx:
sudo tail -20 /var/log/nginx/error.logMůžete vidět chyby jako:
connect() to unix:/var/run/php/php8.1-fpm.sock failed (2: No such file or directory)To naznačuje, že cesta k soketu je nesprávná nebo PHP-FPM neběží.
Pokud se PHP soubory stahují místo spuštění:
To znamená, že Nginx nepředává PHP soubory do PHP-FPM. Zkontrolujte:
- Blok
location ~ \.php$existuje ve vaší konfiguraci serveru - Direktiv
fastcgi_passukazuje na správný socket - Restartovali jste Nginx po provedení změn
Pokud se vám zobrazí chyba „Soubor nebyl nalezen“:
Zkontrolujte, zda soubor snippets/fastcgi-php.conf existuje:
ls -la /etc/nginx/snippets/fastcgi-php.confTento soubor nastavuje SCRIPT_FILENAME, který říká PHP-FPM, který soubor má spustit. Bez něj PHP-FPM neví, který soubor má zpracovat.
Krok 4 — Konfigurace PHP pro vývoj
Konfigurujte PHP pro vývoj úpravou hlášení chyb, nastavení zobrazení a limitů paměti v php.ini. Tato nastavení se liší od konfigurací pro produkci.
PHP používá samostatné konfigurační soubory pro použití v příkazovém řádku (CLI) a na webovém serveru. Upravte příslušný soubor:
Pro CLI (při spouštění PHP z terminálu):
sudo nano /etc/php/8.1/cli/php.iniPro webový server (Apache nebo Nginx s PHP-FPM):
# For Apache
sudo nano /etc/php/8.1/apache2/php.ini
# For PHP-FPM (Nginx)
sudo nano /etc/php/8.1/fpm/php.iniPoznámka: Pokud používáte jak CLI, tak webový server, musíte nakonfigurovat oba soubory zvlášť. Změny v cli/php.ini nemají vliv na webové požadavky a změny v apache2/php.ini nebo fpm/php.ini nemají vliv na skripty CLI.
Základní vývojová nastavení
Najděte a aktualizujte tato nastavení ve vašem souboru php.ini:
display_errors = On
display_startup_errors = On
error_reporting = E_ALL
log_errors = On
error_log = /var/log/php_errors.log
memory_limit = 256M
upload_max_filesize = 64M
post_max_size = 64M
max_execution_time = 300
date.timezone = America/New_YorkCo jednotlivé nastavení dělá:
display_errors=On: Zobrazuje chyby PHP přímo v prohlížeči (užitečné při ladění, nebezpečné v produkčním prostředí)display_startup_errors=On: Zobrazuje chyby, ke kterým dochází při spuštění PHPerror_reporting=E_ALL: Hlásí všechny typy chyb (varování, upozornění, atd.)log_errors=On: Zapisuje chyby do souboru protokoluerror_log: Kam PHP zapisuje chybové záznamymemory_limit=256M: Maximální množství paměti, které může skript použít (zvyšte, pokud se vám zobrazí chyba „paměť vyčerpána“).upload_max_filesize=64M: Maximální velikost nahrávaných souborůpost_max_size=64M: Maximální velikost dat POST (musí být větší nežupload_max_filesize)max_execution_time=300: Maximální doba, po kterou může skript běžet (v sekundách)date.timezone: Nastavuje výchozí časové pásmo (použijte své místní časové pásmo:Asia/Kolkata,Europe/London,UTCatd.)
Upozornění pro produkci: Nikdy tyto vývojové nastavení nepoužívejte v produkčním prostředí. Vždy nastavte display_errors=Off a na živých serverech používejte vhodné úrovně hlášení chyb.
Po provedení změn restartujte svůj webový server:
# For Apache
sudo systemctl restart apache2
# For PHP-FPM
sudo systemctl restart php8.1-fpmOvěření vaší konfigurace
Zkontrolujte, zda se vaše změny projevily:
# For CLI
php -i | grep display_errors
# For web server (create a test file)
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/test.phpOtevřete testovací soubor ve vašem prohlížeči a vyhledejte display_errors. Mělo by se zobrazit On. Po ověření testovací soubor odstraňte.
Pokud se vaše změny neobjeví:
- Ujistěte se, že jste upravili správný soubor
php.ini(CLI vs webový server) - Zkontrolujte překlepy v názvech nastavení (jsou citlivé na velikost písmen)
- Po provedení změn restartujte váš webový server
- Některá nastavení lze přepsat pomocí
.htaccess(Apache) nebophp.inive vašem projektovém adresáři
PHP můžete začít používat hned teď, ale pravděpodobně budete chtít využívat různé knihovny k rychlému vytváření PHP aplikací. Než otestujete své PHP prostředí, nejprve si nastavte správce závislostí pro své projekty.
Krok 5 — Nastavení Composeru pro správu závislostí (volitelné)
Knihovny jsou sbírky kódu, které vám mohou pomoci řešit běžné problémy, aniž byste museli psát všechno sami. Protože je k dispozici mnoho knihoven, použití správce závislostí vám pomůže spravovat více knihoven, jakmile získáte více zkušeností s psaním v PHP.
Composer je nástroj pro správu závislostí v PHP. Umožňuje vám deklarovat knihovny, na kterých váš projekt závisí, a bude spravovat instalaci a aktualizaci těchto balíčků.
Ačkoliv je podobný, Composer není správce balíčků ve stejném smyslu jako yum nebo apt. Zabývá se „balíčky“ nebo knihovnami, ale spravuje je na bázi jednotlivých projektů, instalujíc je do adresáře (např. vendor) uvnitř vašeho projektu. Ve výchozím nastavení nic neinistaluje globálně. Tedy je to správce závislostí. Podporuje však globální projekt pro pohodlí prostřednictvím příkazu global.
Tento nápad není nový a Composer je silně inspirován Nodeovým npm a Ruby bundler.
Předpokládejme:
- Máte projekt, který závisí na několika knihovnách.
- Některé z těch knihoven závisí na jiných knihovnách.
Skladatel:
- Umožňuje vám deklarovat knihovny, na kterých závisíte.
- Zjistí, které verze kterých balíčků lze a je třeba nainstalovat, a nainstaluje je stažením do vašeho projektu.
- Umožňuje vám aktualizovat všechny vaše závislosti jedním příkazem.
- Umožňuje vám zobrazit kapitolu Základní použití pro více informací o deklarování závislostí.
Stáhněte si instalační program Composeru:
curl -sS https://getcomposer.org/installer -o /tmp/composer-setup.phpOvěřte integritu instalátoru kontrolou jeho SHA-384 hashe. Získejte nejnovější hash:
HASH=$(curl -sS https://composer.github.io/installer.sig)Ověřte, zda se hash shoduje:
php -r "if (hash_file('SHA384', '/tmp/composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('/tmp/composer-setup.php'); } echo PHP_EOL;"Měl bys vidět:
Installer verifiedPokud se zobrazí Installer corrupt, stahování nebylo dokončeno nebo bylo upraveno. Stáhněte si instalační soubor znovu a ověřte jeho hash. Pokud problém přetrvává, zkontrolujte své internetové připojení nebo zkuste stáhnout soubor z jiné sítě.
Nainstalujte Composer globálně:
sudo php /tmp/composer-setup.php --install-dir=/usr/local/bin --filename=composerObdržíte výstup podobný tomuto:
All settings correct for using Composer
Downloading...
Composer (version 2.3.5) successfully installed to: /usr/local/bin/composer
Use it: php /usr/local/bin/composerOtestujte svou instalaci:
composerObdržíte výstup jako následující:
______
/ ____/___ ____ ___ ____ ____ ________ _____
/ / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
/_/
Composer version 2.3.5 2022-04-13 16:43:00
Usage:
command [options] [arguments]
Options:
-h, --help Display help for the given command. When no command is given display help for the list command
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi|--no-ansi Force (or disable --no-ansi) ANSI output
-n, --no-interaction Do not ask any interactive question
--profile Display timing and memory usage information
--no-plugins Whether to disable plugins.
--no-scripts Skips the execution of all scripts defined in composer.json file.
-d, --working-dir=WORKING-DIR If specified, use the given directory as working directory.
--no-cache Prevent use of the cache
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
. . .Tímto se ověřuje, že Composer byl úspěšně nainstalován na vašem systému a je dostupný v celém systému.
Poznámka: Pokud dáváte přednost tomu, mít jednotlivé spustitelné soubory Composeru pro každý projekt, který hostujete na svém serveru, můžete ho nainstalovat lokálně, pro každý projekt zvlášť. Tato metoda je také užitečná, pokud váš systémový uživatel nemá oprávnění instalovat software pro celý systém.
K tomu použijte příkaz php /tmp/composer-setup.php bez jakýchkoli argumentů. Tento příkaz vygeneruje soubor composer.phar ve vašem aktuálním adresáři, který můžete spustit pomocí php composer.phar.
Krok 6 — Použití Composeru v projektu PHP
Jako poslední krok můžete volitelně inicializovat svůj projekt pomocí composer init. Tím se vytvoří soubor composer.json, který bude spravovat závislosti vašeho projektu. Inicializace projektu vám také umožní definovat podrobnosti projektu, jako je Autor a Licence, a využít funkci automatického načítání Composeru. Závislosti můžete definovat nyní nebo je přidat později.
Vytvořte adresář projektu a inicializujte Composer:
cd ~
mkdir example-project
cd example-project
composer initSpuštění tohoto příkazu otevře průvodce nastavením. Údaje, které zadáte v průvodci, lze později aktualizovat, takže klidně ponechte výchozí hodnoty a jen stiskněte ENTER. Pokud ještě nechcete instalovat žádné závislosti, můžete zvolit ne. Zadejte své údaje při každém výzvě:
Welcome to the Composer config generator
This command will guide you through creating your composer.json config.
Package name (<vendor>/<name>) [sammy/example-project]: sammy/project1
Description []:
Author [n to skip]: Sammy <sammy@linux-console.net>
Minimum Stability []:
Package Type (e.g. library, project, metapackage, composer-plugin) []: project
License []:
Define your dependencies.
Would you like to define your dependencies (require) interactively [yes]? no
Would you like to define your dev dependencies (require-dev) interactively [yes]? no
Add PSR-4 autoload mapping? Maps namespace "Sammy\Project1" to the entered relative path. [src/, n to skip]: n
{
"name": "sammy/project1",
"type": "project",
"authors": [
{
"name": "Sammy",
"email": "sammy@linux-console.net"
}
],
"require": {}
}
Do you confirm generation [yes]? yesNež potvrdíte generování, uvidíte ukázku souboru composer.json, který průvodce vytvoří. Pokud vše vypadá dobře, můžete potvrdit výchozí možnost ano. Pokud potřebujete začít znovu, zvolte ne.
Poprvé, kdy definujete jakoukoli závislost, Composer vytvoří složku vendor. Všechny závislosti se instalují do této složky vendor. Composer také vytvoří soubor composer.lock. Tento soubor specifikuje přesnou verzi každé závislosti a podzávislosti použitých ve vašem projektu. To zajišťuje, že jakýkoli počítač, na kterém bude váš program spuštěn, bude používat přesně stejnou verzi každého balíčku.
Poznámka: Složku vendor byste nikdy neměli ukládat do vašeho systému pro správu verzí (VCS). Složka vendor obsahuje pouze balíčky, které jste nainstalovali od jiných dodavatelů. Tito jednotliví dodavatelé budou udržovat svůj vlastní kód ve svých vlastních systémech pro správu verzí. Měli byste sledovat pouze kód, který píšete vy. Místo ukládání složky vendor stačí uložit pouze soubory composer.json a composer.lock. Více informací o ignorování konkrétních souborů se můžete dozvědět v příručce Jak používat Git: Referenční průvodce.
Nyní, když máte nainstalovaný PHP a způsob, jak spravovat závislosti vašeho projektu pomocí Composeru, jste připraveni otestovat své prostředí.
Krok 7 — Testování PHP prostředí
Vytvořte a spusťte základní PHP skript pro otestování vaší instalace:
nano hello.phpPřidejte následující kód PHP:
<?php
echo 'Hello World!';
?>Uložte a zavřete soubor (stiskněte CTRL+X, pak Y a nakonec ENTER). Spusťte skript:
php hello.phpPokud je PHP správně zpracováno, uvidíte pouze znaky uvnitř uvozovek:
Hello World!PHP úspěšně zpracovalo skript, což znamená, že vaše prostředí PHP je úspěšně nainstalováno a jste připraveni pokračovat ve své programátorské cestě.
Krok 8 — Nastavení reálných PHP projektů
Moderní PHP frameworky jako Laravel, Symfony a WordPress vyžadují specifické PHP rozšíření a Composer. Framework nainstalujte pomocí Composeru nebo instalátoru frameworku a poté nakonfigurujte svůj webový server tak, aby směřoval do veřejného adresáře projektu.
Nastavení Laravelu
Nainstalujte Laravel pomocí Composeru:
composer create-project laravel/laravel my-laravel-app
cd my-laravel-appTento příkaz stáhne Laravel a všechny jeho závislosti. Proces může trvat několik minut.
Laravel vyžaduje tyto PHP rozšíření (nainstalovaná v kroku 1):
php8.1-mbstring- Zpracování vícebajtových řetězcůphp8.1-xml- zpracování XMLphp8.1-curl- HTTP požadavkyphp8.1-zip- práce s archivyphp8.1-bcmath- Matematika s libovolnou přesností
Pokud Laravel hlásí „chybí mbstring“, i když jste ji nainstalovali:
To obvykle znamená, že rozšíření je nainstalované, ale není načtené. Zkontrolujte:
- Ověřte, zda je rozšíření nainstalováno:
php -m | grep mbstring- Pokud chybí, nainstalujte ho:
sudo apt install php8.1-mbstring- Pokud je nainstalováno, ale nezobrazuje se, restartujte svůj webový server:
# For Apache
sudo systemctl restart apache2
# For PHP-FPM
sudo systemctl restart php8.1-fpm- Zkontrolujte, který soubor
php.inise používá. Instalační program Laravelu používá CLI PHP, takže zkontrolujte:
php --iniUjistěte se, že je rozšíření povoleno v souboru php.ini pro CLI.
Ověření instalace Laravelu:
Po dokončení instalace spusťte vývojový server Laravelu:
php artisan serveMěl bys vidět:
INFO Server running on [http://127.0.0.1:8000]Navštivte http://localhost:8000 ve svém prohlížeči. Měli byste vidět uvítací stránku Laravelu.
Pro produkční prostředí s Apache nebo Nginx:
Nakonfigurujte svůj webový server tak, aby směřoval do adresáře public (nikoli do kořenového adresáře projektu). Soubor public/index.php Laravelu je vstupní bod pro všechny požadavky.
Poznámka: Dozvíte se více o Laravelu v našem tutoriálu Jak nainstalovat Laravel na Ubuntu.
Nastavení WordPressu
Stáhněte a rozbalte WordPress:
cd /var/www
sudo wget https://wordpress.org/latest.tar.gz
sudo tar -xzf latest.tar.gz
sudo chown -R www-data:www-data /var/www/wordpressWordPress vyžaduje databázi MySQL nebo MariaDB. Nainstalujte MySQL, pokud je to potřeba:
sudo apt install mysql-server
sudo mysql_secure_installationSkript mysql_secure_installation vás vyzve k:
- Nastavte heslo pro uživatele root
- Odstranit anonymní uživatele
- Zakázat přihlášení root na dálku
- Odstranit testovací databázi
- Znovu načíst tabulky oprávnění
Vytvořte databázi a uživatele pro WordPress:
sudo mysql -u root -pV MySQL výzvě:
CREATE DATABASE wordpress_db;
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'secure_password';
GRANT ALL PRIVILEGES ON wordpress_db.* TO 'wpuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;Nahraďte secure_password silným heslem. WordPress bude tyto údaje používat k připojení k databázi.
Pokud se WordPress nemůže připojit k databázi:
- Ověřte, zda MySQL běží:
sudo systemctl status mysql- Otestujte připojení k databázi:
mysql -u wpuser -p wordpress_dbPokud to selže, zkontrolujte:
- Uživatelské jméno a heslo jsou správné
- Databáze existuje:
SHOW DATABASES; - Uživatel má oprávnění:
SHOW GRANTS FOR 'wpuser'@'localhost';
- Zkontrolujte, zda je nainstalováno rozšíření PHP pro MySQL:
php -m | grep mysqlPokud chybí, nainstalujte jej:
sudo apt install php8.1-mysql
sudo systemctl restart apache2 # or php8.1-fpm for NginxDokončení instalace WordPressu:
Nakonfigurujte svůj webový server tak, aby směřoval na /var/www/wordpress (viz Krok 2 pro Apache nebo Krok 3 pro Nginx). Navštivte web v prohlížeči. WordPress vás vyzve k:
- Vyberte svůj jazyk
- Zadejte přihlašovací údaje k databázi (použijte databázi, uživatelské jméno a heslo, které jste vytvořili)
- Dokončete instalaci
Poznámka: Pro podrobnou instalaci WordPressu si přečtěte Jak nainstalovat WordPress s LAMP na Ubuntu.
Nastavení Symfony
Nainstalujte Symfony pomocí Composeru:
composer create-project symfony/website-skeleton my-symfony-app
cd my-symfony-appSymfony vyžaduje stejné rozšíření jako Laravel. Spusťte vývojový server:
symfony server:startNebo použijte vestavěný server PHP:
php -S localhost:8000 -t publicPokud instalace Symfony selže kvůli chybám rozšíření:
Zkontrolujte, zda jsou všechny požadované rozšíření nainstalovány a načteny:
php -m | grep -E 'mbstring|xml|curl|zip|bcmath'Pokud některé chybí, nainstalujte je a restartujte svůj webový server.
Krok 9 — Nejlepší postupy pro lokální vývoj
Zabezpečte své místní prostředí, používejte verzovací systém, nastavte správná oprávnění k souborům a nakonfigurujte nastavení specifická pro dané prostředí. Tyto postupy předcházejí bezpečnostním problémům a usnadňují vývoj.
Bezpečnostní úvahy
I při lokálním vývoji dodržujte bezpečnostní osvědčené postupy:
Zakázat nebezpečné PHP funkce v produkci: Funkce jako
exec(),system()ashell_exec()by měly být omezeny v produkčních souborechphp.ini.Používejte proměnné prostředí: Uchovávejte citlivou konfiguraci v souborech
.env(nikdy je neposílejte do verzovacího systému). Laravel a Symfony tuto možnost nativně podporují.Nastavte správná oprávnění souborů: Soubory webového serveru by měly být čitelné uživatelem webového serveru, ale nezapisovatelné:
sudo chown -R www-data:www-data /var/www/your-project
sudo find /var/www/your-project -type d -exec chmod 755 {} \;
sudo find /var/www/your-project -type f -exec chmod 644 {} \;Proč jsou tato oprávnění důležitá: Adresáře potřebují 755 (čtení, zápis a spuštění pro vlastníka; čtení a spuštění pro ostatní), aby je mohl webový server procházet. Souborům je potřeba 644 (čtení a zápis pro vlastníka; pouze čtení pro ostatní), aby je webový server mohl číst, ale ne měnit. To zabraňuje tomu, aby škodlivé skripty přepisovaly vaše soubory.
Integrace správy verzí
Vždy používejte správu verzí pro své PHP projekty. Inicializujte Git ve svém adresáři projektu:
cd /var/www/your-project
git initVytvořte soubor .gitignore pro vyloučení nepotřebných souborů:
/vendor/
/node_modules/
.env
.DS_Store
*.logOptimalizace výkonu
Pro lepší výkon při lokálním vývoji:
Povolit OPcache: OPcache je součástí PHP 8.1 a zlepšuje výkon tím, že ukládá do mezipaměti zkompilovaný PHP kód.
Použijte optimalizaci autoloaderu Composeru:
composer install --optimize-autoloader --no-dev- Konfigurujte PHP-FPM pooly pro lepší správu zdrojů při použití Nginx.
Krok 10 — Řešení běžných problémů
Běžné problémy s instalací PHP zahrnují chybějící rozšíření, nesprávná oprávnění souborů, chyby konfigurace webového serveru a konflikty verzí. Většinu problémů lze vyřešit kontrolou instalace rozšíření, ověřením oprávnění souborů a prohlédnutím logů webového serveru.
Rozšíření PHP se nenačítají
Pokud php -m nezobrazuje rozšíření, které jste právě nainstalovali:
- Ověřte, že je skutečně nainstalován:
dpkg -l | grep php8.1-extension_name- Zkontrolujte, zda existuje soubor rozšíření:
ls /usr/lib/php/*/extension_name.so- Ověřte, že je to povoleno v
php.ini. Některé rozšíření je třeba povolit explicitně:
grep -i extension_name /etc/php/8.1/*/php.ini- Restartujte svůj webový server:
# For Apache
sudo systemctl restart apache2
# For PHP-FPM
sudo systemctl restart php8.1-fpm- Zkontrolujte, který
php.inise používá:
php --iniUjistěte se, že kontrolujete správný soubor php.ini (CLI vs webový server).
Pokud se rozšíření stále nezobrazuje:
- Některá rozšíření vyžadují další systémové knihovny. Zkontrolujte dokumentaci rozšíření
- Ověřte, že jste nainstalovali správnou verzi (php8.1-extension, ne php8.0-extension)
- Zkontrolujte konfliktní verze PHP, které by mohly způsobovat problémy
500 Vnitřní chyba serveru
Chyba 500 znamená, že server narazil na chybu, ale nemůže zobrazit podrobnosti. Zkontrolujte chybové záznamy:
# Apache
sudo tail -20 /var/log/apache2/error.log
# Nginx
sudo tail -20 /var/log/nginx/error.log
# PHP-FPM
sudo tail -20 /var/log/php8.1-fpm.logBěžné příčiny a řešení:
- Nesprávná oprávnění souboru: PHP soubory musí být čitelné uživatelem webového serveru
sudo chown -R www-data:www-data /var/www/your-project
sudo find /var/www/your-project -type f -exec chmod 644 {} \;
sudo find /var/www/your-project -type d -exec chmod 755 {} \;Chybějící rozšíření PHP: Zkontrolujte chybový protokol pro zprávy jako „Volání nedefinované funkce“. Nainstalujte chybějící rozšíření a restartujte webový server.
Chybné syntaxy v souborech PHP: Protokol chyb zobrazí soubor a číslo řádku. Běžné problémy:
- Chybějící středníky
- Neuzavřené závorky nebo uvozovky
- Používání nedefinovaných funkcí nebo tříd
Nesprávná konfigurace webového serveru:
- Apache: Zkontrolujte konfiguraci virtuálního hostitele, načítání modulů
- Nginx: Ověření cesty k socketu PHP-FPM, konfigurace FastCGI
Překročeno paměťové omezení PHP: Zvyšte
memory_limitvphp.ini, pokud se zobrazují chyby „Vyčerpána povolená velikost paměti“
Konflikty verzí PHP
Pokud php -v ukáže jinou verzi, než jste očekávali, máte nainstalováno několik verzí PHP.
Zkontrolujte, které verze jsou nainstalovány:
dpkg -l | grep php | grep -E 'php[0-9]'Explicitně použijte správnou verzi:
php8.1 -v
php8.1 -mAktualizujte svůj webový server na PHP 8.1:
Pro Apache deaktivujte jiné PHP moduly a povolte PHP 8.1:
sudo a2dismod php7.4 php8.0 # if they exist
sudo a2enmod php8.1
sudo systemctl restart apache2Pro PHP-FPM zastavte jiné verze a spusťte PHP 8.1:
sudo systemctl stop php7.4-fpm php8.0-fpm # if they exist
sudo systemctl start php8.1-fpm
sudo systemctl enable php8.1-fpmNastavte PHP 8.1 jako výchozí verzi CLI:
sudo update-alternatives --set php /usr/bin/php8.1Problémy s pamětí Composeru
Pokud Composer dojde paměť, uvidíte chybu jako:
Fatal error: Allowed memory size of 134217728 bytes exhaustedOpravte to spuštěním Composeru s vyšší pamětí:
php -d memory_limit=512M /usr/local/bin/composer installNebo zvýšit limit paměti PHP v php.ini:
memory_limit = 512MPokud instalace Composeru selže kvůli nesouladu hashů:
Ověření hashe může selhat, pokud:
- Instalační program byl aktualizován od doby, kdy jste si jej stáhli (stáhněte znovu, abyste získali nejnovější hash)
- Váš soubor ke stažení byl poškozen (zkuste stáhnout znovu)
- Jste za proxy serverem, který upravuje soubory (zkontrolujte nastavení sítě)
Problémy s připojením k databázi
Pokud se vaše PHP aplikace nemůže připojit k MySQL/MariaDB, můžete vidět chyby jako:
SQLSTATE[HY000] [2002] No such file or directorynebo
Access denied for user 'username'@'localhost'Kroky pro řešení problémů:
- Ověřte, že databázová služba běží:
sudo systemctl status mysqlPokud neběží, spusťte ho:
sudo systemctl start mysql
sudo systemctl enable mysql- Zkontrolujte, zda je nainstalováno rozšíření PHP pro MySQL:
php -m | grep mysqlPokud chybí, nainstalujte jej:
sudo apt install php8.1-mysql
sudo systemctl restart apache2 # or php8.1-fpm for Nginx- Ověřte údaje a oprávnění k databázi. Otestujte připojení:
mysql -u username -p database_namePokud to selže, zkontrolujte:
- Uživatelské jméno a heslo jsou správné
- Databáze existuje:
SHOW DATABASES; - Uživatel má oprávnění:
SHOW GRANTS FOR 'username'@'localhost';
Poznámka: Pro nastavení MySQL viz Jak nainstalovat MySQL na Ubuntu.
Soubor PHP se zobrazuje jako prostý text místo spuštění
Pokud se váš PHP soubor ve prohlížeči zobrazuje jako prostý text:
Zkontrolujte příponu souboru: Musí být
.php, nikoli.txtnebo.htmlOvěřte, zda PHP zpracovává soubory:
- Apache: Zkontrolujte, zda je povolen
mod_php:apache2ctl -M | grep php
- Apache: Zkontrolujte, zda je povolen
- Nginx: Zkontrolujte, zda PHP-FPM běží a zda je cesta k socketu správná
Zkontrolujte oprávnění souboru: Webový server musí mít možnost soubor číst
Ověřte, zda soubor obsahuje PHP kód: Ujistěte se, že začíná
<?phpnebo<?Zkontrolujte konfiguraci webového serveru:
- Apache: Virtuální hostitel nemusí být správně nakonfigurován
- Nginx: Blok
location ~ \.php$může chybět nebo být nesprávný
Problémy s nahráváním souborů
Pokud nahrávání souborů selže, můžete vidět chyby jako:
The uploaded file exceeds the upload_max_filesize directiveZkontrolujte tato nastavení php.ini:
upload_max_filesize = 64M
post_max_size = 64M
max_execution_time = 300Důležité: post_max_size musí být větší než upload_max_filesize. Pokud nastavíte upload_max_filesize=100M, nastavte post_max_size=110M nebo více.
Pokud nahrávání stále selhává:
- Zkontrolujte protokol chyb pro konkrétní chybové zprávy
- Ověřte, že adresář pro nahrávání existuje a je zapisovatelný:
sudo chmod 755 /path/to/upload/directory
sudo chown www-data:www-data /path/to/upload/directory- Zkontrolujte místo na disku:
df -h - Ověřte, že formulář používá
enctype="multipart/form-data"
Po provedení změn v php.ini restartujte svůj webový server.
Často kladené otázky
Jak nainstaluji PHP 8.1 na Ubuntu?
Nainstalujte PHP 8.1 pomocí správce balíčků Ubuntu: sudo apt update && sudo apt install php8.1. PHP 8.1 je k dispozici v výchozích repozitářích Ubuntu, takže nejsou potřeba žádné další zdroje balíčků.
Které rozšíření PHP jsou nezbytné pro vývoj?
Základní rozšíření zahrnují php8.1-cli, php8.1-mysql, php8.1-curl, php8.1-xml, php8.1-mbstring, php8.1-zip, php8.1-gd a php8.1-bcmath. Tato rozšíření pokrývají připojení k databázi, HTTP požadavky, práci s řetězci a zpracování obrázků.
Jak nakonfigurovat PHP s Apache nebo Nginx?
Pro Apache nainstalujte libapache2-mod-php8.1 a aktivujte jej pomocí sudo a2enmod php8.1. Pro Nginx nainstalujte php8.1-fpm a nakonfigurujte Nginx tak, aby předával požadavky PHP na socket PHP-FPM pomocí FastCGI.
Jak mohu ověřit, že je PHP správně nainstalováno?
Spusťte php -v pro kontrolu verze PHP. Vytvořte testovací soubor s <?php phpinfo(); ?> a otevřete ho přes svůj webový server, abyste viděli podrobné informace o konfiguraci PHP.
Mohu s tímto nastavením spustit Laravel nebo WordPress lokálně?
Ano. Laravel vyžaduje Composer a výše uvedené standardní PHP rozšíření. WordPress k PHP navíc potřebuje databázi MySQL. Oba frameworky fungují s konfiguracemi Apache nebo Nginx.
Jak nainstaluji Composer pro PHP projekty?
Stáhněte instalátor Composeru, ověřte jeho hash a nainstalujte ho globálně: sudo php /tmp/composer-setup.php --install-dir=/usr/local/bin --filename=composer. Ověřte příkazem composer --version.
Jak řešit chybějící PHP rozšíření?
Zkontrolujte nainstalované rozšíření pomocí php -m. Chybějící rozšíření nainstalujte pomocí sudo apt install php8.1-název_rozdílení a poté restartujte svůj webový server.
Jak nastavím vykazování chyb PHP pro vývoj?
Upravte php.ini a nastavte display_errors=On, error_reporting=E_ALL a log_errors=On. Nezapomeňte ve výrobním prostředí vypnout zobrazování chyb.
Jaký je rozdíl mezi Apache a Nginx pro PHP?
Apache používá mod_php pro přímé zpracování PHP (PHP je vloženo do procesu Apache), zatímco Nginx vyžaduje PHP-FPM (FastCGI Process Manager) pro zpracování PHP požadavků (PHP běží jako samostatná služba). Podívejte se na sekci „Výběr mezi Apache a Nginx“ výše pro podrobnou srovnávací tabulku. Oba přístupy fungují dobře; vyberte podle svých potřeb co se týče výkonu, znalostí a stávající infrastruktury.
Mohu na stejném systému nainstalovat více verzí PHP?
Ano, lze použít nástroje jako phpenv nebo phpbrew. Pro většinu vývojových scénářů však stačí jedna verze PHP. Správce verzí použijte, pokud potřebujete testovat aplikace proti různým verzím PHP.
Závěr
Nyní máte plně nakonfigurované vývojové prostředí PHP 8.1 na Ubuntu s podporou pro webové servery Apache i Nginx. Vaše nastavení zahrnuje základní rozšíření PHP, Composer pro správu závislostí a správnou konfiguraci pro lokální vývoj.
Než začnete svůj další projekt, zvažte nastavení integrovaného vývojového prostředí (IDE) jako VS Code s PHP rozšířeními pro zvýrazňování syntaxe, ladění a podporu IntelliSense.
S připraveným prostředím můžete dále prozkoumávat vývoj v PHP:
- Naučte se základy PHP s návodem Jak pracovat s řetězci v PHP
- Vytvářejte API pomocí návodu Jak používat webová API v PHP
- Pochopte funkce v Jak používat funkce v PHP
- Nastavte databáze s průvodcem Jak nainstalovat a používat PostgreSQL na Ubuntu
Pro produkční nasazení zvažte použití platformy Linux-Console.net App Platform k nasazení vašich PHP aplikací přímo z GitHubu s automatickým škálováním a SSL certifikáty.
Děkujeme, že se učíte s komunitou Linux-Console.net.

