< PHP

Fejlesztői környezet

Szerző: Sallai András

Copyright © 2014, Sallai András

Szerkesztve: 2014, 2015, 2017, 2019, 2021, 2024

Licenc: CC BY-SA 4.0

Web: https://szit.hu

A PHP értelmezőről

A PHP szerveroldali nyelv, vagyis PHP értelmező nélkül, csak böngészőben nem tudjuk tesztelni. Lehetőség van a PHP parancssoros értelmezőjének használatára is, így a megkerülhető egy webszerver telepítése. Egy fejlesztőnek, hosszú távon mindenképpen szüksége van egy webszerverre is.

A PHP beépített webszerverének indítása:

php -S localhost:8000 -t .

Hibák mutatása a böngészőben, ha nincs bekapcsolva:

php -d display_errors=on -S localhost:8000 -t .

Ha távolról is elérhető szeretnénk tenni:

php -S 0.0.0.0:8000

Fejlesztői környezet Windowson

Webszerver, MySQL szerver PHP-val a legegyszerűbben az XAMPP csomaggal telepíthető. Szükségünk lesz valami szövegszerkesztőre is. Ha támogatja a kódkiegészítést, akkor az nagy segítség lehet.

Ajánlott szerkesztők:

VSCode

Atom

NetBeans

Notepad++

Notepad2

Scite

Geany

Bluefish

Brackets

Megjegyzés: A Notepad++ UTF-8 BOM-al hibás PHP értelmezést eredményez. Dolgozzunk BOM nélkül.

AMP szerverek

LAMP – https://bitnami.com/stack/lamp

XAMPP

WAMP – http://www.wampserver.com/

LAMP

Megoldás gyűjtemény dinamikus weboldalak létrehozására.

Linux

Apache

MariaDB vagy MySQL

Perl, PHP vagy Python

Töltsük le a LAMP szervert a weblapjáról:

https://bitnami.com/stack/lamp

A leírás pillanatában (2019-05-04) a 7.1.29 verzó érhető el. Így letöltéskor kapunk egy ilyen állományt:

bitnami-lampstack-7.1.29-0-linux-x64-installer.run

A .run kiterjesztésű fájl egy ELF bináris. Adjunk rá futtatási jogot, majd futtassuk:

chmod +x bitnami-lampstack-7.1.29-0-linux-x64-installer.run
./bitnami-lampstack-7.1.29-0-linux-x64-installer.run

A telepítő /opt/lampstack-7.1.29-0 könyvtárba telepszik alapértelmezetten, amit a telepítés során megváltoztathatunk.

A csomaghoz tartozik egy GUI menedzselő program is. Az indításhoz lépjünk be /opt/lampstack-7.1.29-0 könyvtárba, majd rendszergazdaként indítsuk:

.manager-linux-x64.run

Telepítés Linuxon

apt update apt install apache2 php5 mysql-server

LEMP szerver

A LEMP szerver esetén az Apache-t felváltja a Nginx:

Linux

Enginx

MySQL

PHP

Tenedők:

apt install nginx
ufw allow 'Nginx HTTP'
apt install mysql-server
apt install php-fpm php-mysql

XAMPP

A LAMP szerverek keresztplatformos változata. Telepíthető Windows, Linux és macOS gépekre is.

Webszerver, adatbázis szerver PHP-val, minden platformra.

A webszerver és a PHP telepíthető külön-külön, azonban az XAMPP csomag használata. Telepítés után kapunk egy Control Panel nevezetű felületet, amin elindíthatjuk az Apache webszervert.

Az XAMPP alapértelmezésként a c:\xampp\ könyvtárba telepszik. A PHP alapú weboldalainkat a következő helyre tehetjük:

c:\xampp\htdocs\

Ebben a könyvtárban célszerű létrehozni, például egy php könyvtárat:

c:\xampp\htdocs\php\

Ide másolva a index.php állományunkat:

c:\xampp\htdocs\php\index.php

a következő helyen érhetjük el a generált weboldalt a böngészőben:

http://localhost/php/

Windows 10-n az XAMPP telepítésekor UAC figyelmeztetés jelenik meg. Menjen tovább és, hagyja, hogy a telepítő a C:\XAMPP könyvtárba telepítse a szoftvert vagy kapcsolja ki a vezérlőpultban az UAC-t.

Security and Maintenance > Change User Account Control Settings

Biztonság és karbantartás > Biztonság és karbantartás beállításainak módosítása

[ ]Felhasználói fiókok felügyelete

Telepítés Chocolatey csomagkezelővel

choco install xampp-73

Szükség szerint más verziók is telepíthetők:

choco install xampp-74

choco install xampp-80

choco install xampp-81

macOS

XAMPP esetén a felhasználó felvételnél a host maradjon %.

WAMP szerver

A LAMP windowsos változata, a WAMP tartalmazza a webszervert, adatbázis szervert és PHP-t.

Windows

Apache

MySQL

PHP

PHP kapcsolók

A php.ini fájlban a display_errors értékei a különböző környezetben:

alapértelmezett érték: On

fejlesztői érték: On

termék esetén az érték: Off

Az error_reporting értéke:

alapértelmezett érték: E_ALL & ~E_NOTICE

fejlesztői érték: E_ALL | E_STRICT

termék esetén az érték: E_ALL & ~E_DEPRECATED

Van aki szerint fejleszteni mindig E_STRICT + E_NOTICE bekapcsolt állapota mellett jó.

Unit teszt

apt install phpunit

PHP referencia

http://www.php.net/docs.php

Hasznos eszközök

http://phpsysinfo.github.io/phpsysinfo/ (2019; PhpSysInfo)

http://filp.github.io/whoops/ (2019; Whoops)

https://github.com/squizlabs/PHP_CodeSniffer (2019; kód elemzés, formázás)

Online

https://wtools.io/php-sandbox (2020)

http://phpfiddle.org/ (2020)

macOS

PHPMyAdmin esetén:

localhost helyett IP cím

szükséges portszám

Több PHP verzió

Windowson

Töltsük le a kívánt verziókat:

https://windows.php.net/download/

Állítsuk be az útvonalat:

set PATH=C:\xampp\php;%PATH%

Ha az apache webszervernek is szüksége van a PHP-ra, akkor állítsuk be httpd.conf fájlban a kívánt PHP verziót, például:

LoadModule php7_module c:\php7\libphp7.so

Linuxon

Telepítsük a kívánt PHP verziókat. Például:

apt install apt-transport-https
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" | tee /etc/apt/sources.list.d/sury-php.list
apt update
apt install php8.1

Ha több PHP verziónk van, használjuk az alternatives rendszert:

update-alternatives --config php

Sqlite használata esetén szükség lehet a php.ini szerkesztésére. Keressük meg a kiterjesztést:

//...
extension=pdo_sqlite
//...
extension=sqlite3

Visual Studio Code

Bővítmények:

PHP Debug

PHP Intelephense

PHP IntelliSense

PHP Extension Pack

Intelephense rövidítés:

fun