Vývoj aplikací v PHP často zahrnuje práci s databázemi, přičemž MySQL je jednou z nejpopulárnějších volb. K interakci s databází MySQL v PHP lze využít rozhraní mysqli
. Avšak, při pokusu o použití tohoto rozhraní se můžete setkat s chybou: "Fatal error: Uncaught Error: Class 'mysqli' not found". Tento článek se zaměřuje na podrobné vysvětlení a řešení této problematiky.
Příčiny chyby
Chyba "Fatal error: Uncaught Error: Class 'mysqli' not found" obvykle signalizuje, že rozšíření mysqli
není ve vaší instalaci PHP aktivní. Rozšíření mysqli
(MySQL Improved) je doporučený způsob práce s databázemi MySQL v PHP díky svým vylepšením oproti staršímu rozhraní mysql
.
Diagnostika problému
Než přejdeme k opravě, je důležité ověřit, zda je rozšíření mysqli
skutečně neaktivní. To můžete provést spuštěním následujícího příkazu v konzoli nebo terminálu: php -m
Tento příkaz vypíše všechna aktivní rozšíření PHP. Pokud v seznamu nevidíte mysqli
, znamená to, že rozšíření není aktivováno.
Oprava chyby
Aktivace rozšíření mysqli
1. Zjištění cesty k souboru php.ini
Prvním krokem je zjištění, který konfigurační soubor php.ini
vaše instalace PHP používá. Tuto informaci získáte spuštěním: php --ini
2. Úprava souboru php.ini
Otevřete zjištěný soubor php.ini
v textovém editoru. Najděte řádek, který obsahuje ;extension=mysqli
nebo ;extension=mysqli.so
(pro Linux/Mac) a odstraňte z něj středník (;), což komentář deaktivuje. Pokud tento řádek ve vašem souboru php.ini
chybí, manuálně jej přidejte do sekce rozšíření.
3. Restartování webového serveru
Po uložení změn v souboru php.ini
je nutné restartovat webový server, aby se změny projevily. Proces restartu se liší v závislosti na použitém webovém serveru (Apache, Nginx, XAMPP, WAMP atd.).
Alternativní řešení
Pokud i po aktivaci rozšíření mysqli
problém přetrvává, je možné, že vaše verze PHP není kompatibilní s instalovanou verzí MySQL serveru nebo že PHP není správně nainstalováno. V takovém případě doporučujeme:
- Zkontrolovat kompatibilitu verzí PHP a MySQL.
- Reinstalovat PHP s podporou pro MySQL.
Chyba "Fatal error: Uncaught Error: Class 'mysqli' not found" je obvykle způsobena neaktivním rozšířením mysqli
v PHP. Její oprava spočívá v aktivaci tohoto rozšíření prostřednictvím úpravy konfiguračního souboru php.ini
a následném restartování webového serveru. Pokud problém přetrvává, je doporučeno zkontrolovat kompatibilitu verzí PHP a MySQL a případně provést reinstalaci PHP.