Bevezetés a PHP keretekbe
Mielőtt mély betekintést nyernénk a PHP-keretekbe, beszéljünk arról, hogy miért van szükségünk a keretrendszerekre, és hogyan könnyítik meg a fejlesztő életét?
Amikor egy weboldal fejlesztésére törekszünk, az építészet számos elemét sorba kell helyezni, mielőtt folytatnánk a tényleges sort, például annak eldöntése, hogy egy webes hívás hogyan halad át az ügyfél oldaláról a szerver oldalára, amely az általános jelleg elvesztése nélkül magában foglalja a kérés típusának ellenőrzése (Get, Post vagy Put), az ellenőrzési nyomvonal naplózása, az elfogó kezelése stb.
Ha azt szeretné, hogy vanília megközelítést alkalmazzon, anélkül, hogy bármilyen keretet beépítené, akkor valószínűleg a híváskezeléstől a biztonságig (például a webhelyek közötti szkriptek készítéséig), az összes példányt kezelnie kell, és valószínűleg több fejlesztőt kell felbérelnie ugyanahhoz, ami sajnos növeli a az alkalmazás fejlesztésének költségei.
Most mutassuk be, hogy milyen típusú keretek vannak a PHP fejlesztésére, és válasszuk ki a kidolgozandó alkalmazásunknak legmegfelelőbbet (szem előtt tartva azt a üzleti területet, amelyre a fejlesztés készül, és milyen szigorúak az üzleti szabályok).
A PHP keretek listája
Itt található a legjobb PHP-keretek felsorolása, népszerűsége és az alkalmazásfejlesztés megkönnyítésének képessége alapján.
Laravel
Ez egy nyílt forráskódú keret, a modell-nézet-vezérlő alapú architektúrát követve. A szolgáltatás által nyújtott különféle funkciók a következők:
- A zeneszerző a Laravel 4 megjelenése óta érhető el, és függőségi menedzserként működik, hogy felvegye aagnosztikát.
- Eloquent ORM, azaz aktív rekordminta megvalósítás.
- A Query Builder osztályokat biztosít.
- A Laravel rendkívül tiszta és olvasható kódot inspirál, ezáltal megkönnyítve a fejlesztők életét.
- A Laravel robusztus webes alkalmazásbiztonságot kínál, mivel magában foglalja a jelszó-kódolást, a titkosítást, az e-mail ellenőrzést és az API-hitelesítést.
- Biztosítva a védett és biztonságos útválasztást, az összes Laravel útvonalat meghatározzuk az útvonalak könyvtárában, és ezeket a fájlokat a keret automatikusan letölti.
- A CSRF-tokent az URL-ekhez csatolják a webhelyek közötti hamisítás megakadályozására.
- Az előlapon a keret olyan funkciókat kínál, mint a Blade (sablonmotor) sablon, a lokalizáció, a Javascript és a CSS állványok.
- Támogatja a Redis (kulcsérték-tároló), a lapozás, az áttelepítések (az adatbázis séma megosztása), az adatbázis-vetés,
- Szerverkövetelmények a Laravel-rel való együttműködés előtt.
A legjobb, ha a Laravel Homestead virtuális gépet használjuk, ezért nagyon ajánlott ezt használni a helyi Laravel fejlesztési környezetünkként.
Ha nem a Homestead-t használja, akkor a következőkre van szükség:
- PHP = = 7.1.3
- OpenSSL PHP kiterjesztés
- OEM PHP kiterjesztés
- Mbstring PHP kiterjesztés
- Tokenizer PHP kiterjesztés
- XML PHP kiterjesztés
- Ctype PHP kiterjesztés
- JSON PHP kiterjesztés
- BCMath PHP kiterjesztés
A Laravel telepítése
A Laravel a zeneszerzőt használja függőségeinek kezelésére, így az elsődleges követelmény az, hogy a zeneszerzőt előre telepítsék.
Ezután töltse le a Laravel telepítőjét az alább megadott zeneszerzővel.
A zeneszerzőnek globálisan szüksége van a Laravelre / telepítőre.
- Projekt létrehozása zeneszerzőn keresztül
Zeneszerző létrehozása -projekt - prefer-dist Laravel / Laravel blog
- Helyi fejlesztő szerver
php kézműves szolgál
CodeIgniter
A CodeIgniter egy nyílt forráskódú fejlesztési keret, amely a következő funkciókat kínálja:
- Nem igényel szigorú modell-nézet-vezérlő megvalósítást, a vezérlő kötelezően kötelező, a modell és a nézet opcionális.
- A segítő funkciók is vannak, például az URL-segítők, amelyek elősegítik a linkek létrehozását, az Űrlap-segítők ott vannak, a Szövegsegítők ott vannak a szöveg formázásához, és a Cookie-segítők ott vannak a sütik beállításához és olvasásához.
- Készíthet új könyvtárakat, helyettesítheti és eltávolíthatja a natív könyvtárakat.
- A Horgok funkció lehetővé teszi a keret belső működésének megváltoztatását és módosítását anélkül, hogy feltörnénk a magfájlokat.
- Az automatikus betöltés funkció lehetővé teszi a könyvtárak, segítők és modellek automatikus indítását a rendszer minden futtatásakor.
- A CodeIgniter biztosítja az oldalak gyorsítótárazási funkcióját, ezáltal javítva a teljesítményt.
- A CodeIgniternek van egy hibanapló osztálya, amely lehetővé teszi a hiba- és hibakeresési üzenetek szöveges fájlként történő mentését.
- URI útválasztás van, az URL karakterlánc egyedileg van leképezve a vezérlőhöz.
- A jelszó-kivonás ott van a> PHP verziónál> 5.5
- Az adatbázis részben a rendelkezésre álló különféle szolgáltatások a QueryBuilder, QueryCaching, Transactions stb.
- A környezeti változók beállíthatók annak eldöntésére, hogy honnan kell futtatni az alkalmazást, vagyis fejlesztési környezettel vagy termeléssel.
- Hogyan telepíthetem a CodeIgniter programot -
- Töltse le a CodeIgniter programot a Kattintson ide
- Csomagolja ki a csomagot.
- Töltse fel a CodeIgniter mappákat és fájlokat a kiszolgálóra. Az index.php fájl általában a gyökérzetében lesz.
- Nyissa meg az application / config / config.php fájlt egy szövegszerkesztővel, és állítsa be az alap URL-t. Ha titkosítást vagy munkameneteket kíván használni, állítsa be a titkosítási kulcsot.
- Ha adatbázist kíván használni, nyissa meg az application / config / database.php fájlt egy szövegszerkesztővel, és állítsa be az adatbázis beállításait.
symfony
A Symfony egy nyílt forráskódú szoftver, a Symfony összetevői szétválasztott és újrafelhasználható PHP könyvtárak. Célja a robusztus vállalati alkalmazások fejlesztése, és célja, hogy a fejlesztőknek teljes ellenőrzést adjon a konfiguráció felett a könyvtáraktól a külföldi könyvtárakig, és testreszabható legyen.
A Symfony a következő szolgáltatásokkal van beépítve -
- Lokalizált útválasztást (i18n) biztosítunk, ezáltal az útvonalak lokalizálhatók, hogy lokálonként egyedi útvonalakat biztosítsanak. A Symfony segítségével ezek az útvonalak másolás nélkül írhatók, a helyettesítő karakterek is támogatottak.
- Az ágsablonok ott vannak, egyszerűek és nem dolgozzák fel a PHP címkéket, az ág automatikusan képes HTML-menekülésre, manuális kontextuskimeneti kijutásra és néhány szűrő beillesztésére.
- Az ág sablonok gyorsítótárazása gyorsítja a folyamatot, mivel a sablonokat egy natív PHP osztályba fordítják és tárolják.
- Az eszközösszetevő ott van a CSS, JS és képek URL generálásához és verziózásához.
- A BrowserKit összetevő arra szolgál, hogy szimulálja a webböngésző viselkedését, lehetővé téve a kérések benyújtását, a linkekre kattintást és az űrlapok programszerű benyújtását.
- A függőség-befecskendező elem ott van, amely egy PSR-11-kompatibilis szerviztárolót valósít meg, amely lehetővé teszi az objektumok szabványosítását és központosítását az alkalmazásban.
- A DOMCrawler összetevő megkönnyíti a DOM navigációt HTML és XML dokumentumokhoz.
- A Dotenv komponens a .env változókban tárolt környezeti változók előállításához szükséges.
- Az esemény-diszpécser ott van, hogy az alkatrészek kommunikálhassanak az esemény-disztribúcióval és hallgathatják őket.
- Az LDAP összetevő már jelen van az LDAP kiszolgálóval való kommunikációhoz.
- Az ExpressionLanguage összetevő egy olyan motort biztosít, amely képes kifejezéseket összeállítani és értékelni.
- A Polyfill / APCu összetevő biztosítja az apcu_ * funkciókat és az ACPUIterator osztályt a régi APC kiterjesztés felhasználói számára.
- A sorosító alkotóeleme az objektumok olyan formátumban történő elfordításához, mint a JSON, XML vagy YAML.
- Telepítési lépések
A letöltéshez kövesse az alábbi lépéseket, az zeneszerzőt előre kell telepíteni a rendszerbe -
A zeneszerző szimfóniát / eszközt igényel
Az egyes összetevők fent említett letöltéséhez látogasson el a -
https://symfony.com/components
CakePHP
A CakePHP egy nyílt forráskódú platform, amely egyszerűbbé és gyorsabbá teszi a webes alkalmazások felépítését, kevesebb kódot igényel. A CakePHP a következő tulajdonságokkal rendelkezik -
- Állványzatot biztosít a prototípusok gyors felépítéséhez.
- A CakePHP-ben van egy gyorsítótár-osztály, amely támogatja a gyorsítótárazást, és biztosítja a statikus felületet és az egységes API-t, hogy kölcsönhatásba léphessen a különböző gyorsítótár-megvalósításokkal.
- A Hash osztály statikus segédprogramokat biztosít, amelyek megfelelő tömbkezelést tesznek lehetővé, ezáltal optimalizálva a kódot.
- A befolyásoló osztály a megadott karakterlánc- és szóváltozatok, például pluralizáció és tevezés kezelésére szolgál.
- A naplózás a CakePHP-ben egyszerű, a log () funkciót a LogTrait biztosítja.
- A REST felállításának és futtatásának leggyorsabb módja az, ha néhány sort ad hozzá az erőforrás útvonalak beállításához a config / route.php fájlban.
- A validációs csomag a CakePHP-ben olyan funkciókat kínál, amelyek validátorokat építhetnek fel, amelyek könnyedén validálhatják az adatok tetszőleges tömbjeit.
- Különböző beépülő modulok támogatottak a CakePHP-vel való együttes használathoz, ezek Chronos (a DateTime objektum kiterjesztéseinek nulla függőségű gyűjteményét biztosítja), DebugKit (hibakeresési eszköztárat és továbbfejlesztett hibakeresési eszközöket kínál), ElasticSearch (ORM-hez hasonló absztrakciót biztosít az elasztikus keresés teteje, megkönnyíti a dokumentumok tesztelését és indexelését).
- A Phinx és a CakePHP, a phinx lehetővé teszi a fejlesztők számára, hogy az adatbázisokat egyértelműen megváltoztassák és manipulálják. Nem kell kézzel írnia az SQL-t, inkább a phinx hatékony API-kat biztosít a migráció létrehozásához PHP-kóddal.
- A sütőkonzol a CakePHP gyorsabb futtatásához biztosított, a sütőkonzol modelleket, nézeteket, viselkedéseket, tesztpéldányokat, rögzítőket és pluginokat hozhat létre.
A Phinx egyszerűen telepíthető:
php zeneszerző. phar szükséges robmorgan / phinx
A köztes szoftverek támogatása ott van, hogy az alkalmazásunkat újrafelhasználható és összeállítható rétegekbe foglalhassuk a kéréskezelés vagy a válaszépítés során.
- Telepítés és előfeltételek:
Leírjuk néhány előfeltételt, amelyet teljesíteni kell a telepítés megkezdése előtt:
- HTTP szerver (Apache, Nginx vagy Microsoft IIS)
- PHP 7.3
- mbstring PHP kiterjesztés
- intl PHP kiterjesztés (ha XAMPP-t használ, akkor az intl kiterjesztést is bele kell foglalni, de feltétlenül törölje a php_intl.dll kiterjesztést a Php.ini fájlban, és indítsa újra az XAMPP szervert a vezérlőpulton keresztül, amennyiben WAMP-t használ, az intl kiterjesztés alapértelmezés szerint aktiválva van), csak annyit kell tennie, hogy felmegy a php mappába, és másolja az összes fájlt az icu * .dll szinonimájához, és illessze be őket az apache bin könyvtárba, majd indítsa újra a szolgáltatásokat).
- simplexml PHP kiterjesztés
- OEM PHP kiterjesztés
- Az adott listán szereplő összes adatbázisot telepíteni kell a számítógépére:
- MySQL (v5.5.3 vagy újabb)
- MariaDB (v 5.5 vagy újabb)
- PostgreSQL
- SQLite3
- Microsoft SQL szerver (> = 2008-as verzió)
FuelPHP
A FuelPHP egy nyílt forráskódú keret, gyors és kompatibilis a PHP 5.4+ verziókban, a beépített szolgáltatások az alábbiakban vannak felsorolva -
- MVVM típusú keretrendszere, amely nemcsak a modell-nézet-vezérlőre korlátozódik, hanem a modell-nézet-nézet-modell megközelítést is magában foglalja. A viewModels bemutatási modelleknek is nevezik.
- A FuelPHP támogatja a router alapú megközelítést, amely lehetővé teszi számunkra, hogy közvetlenül írjuk az URI-t.
- Támogatja a CSRF tokeneket a webhelyek közötti szkriptek hamisításának megakadályozására.
- A bemeneti szűrés és a lekérdezéskészítő segít az SQL-befecskendezésben.
- Az auth-keret támogatott a biztonságos hitelesítés céljából.
- A FuelPHP „olaj” elnevezésű CLI-t biztosít, amelynek célja a fejlesztés, a tesztelési segítség és a hibakeresés felgyorsítása. Segít az adatbázis-migrációk futtatásában is.
- Néhány alaposztályt a vezérlőknek és a modelleknek biztosítanak, hogy a fejlesztők repülhessenek. Ezek a funkciók a következők: Controller_Template (egyszerű oldalsablonálási funkciók hozzáadása a vezérlőkhöz), Controller_Rest (a RESTful API létrehozásának módja), Controller_Hybrid (kombinálj két funkciót egyetlen vezérlőbe), Model_crud (a CRUD műveletek összes módszerét biztosítja egyetlen táblázatban).
- A könnyű ORM objektum-orientált módon működik az adatbázis-adatokkal és CRUD-t hajt végre, a kapcsolatoknak nagyon sok, sok-sok hasonló, a lépcsőzetes mentés és törlés a kapcsolódó objektumokhoz. A megfigyelők frissítik az objektumpéldányokat.
- A biztonság magában foglalja az Auth-keretet, integrálta az Opauth könyvtárat, és számos más funkcióval rendelkezik, például a szerepkör-alapú hozzáférés-vezérlés (RBAC), a biztonságos kivonási funkció a jelszavakhoz, az OAuth-integráció a közösségi média hitelesítéséhez.
- Vannak sablon elemzők, amelyek javítják a nézeteket az egyszerű PHP-ből, számos könyvtár van ehhez:
- Bajusz
- Gally
- Haml
- gebe
- Dawoo
- Smarty
- Árleszállítás
- Telepítési lépések -
Ehhez kövesse az adott lépéseket -
$ curl https://get.fuelphp.com/oil | SH
A projekt a következő segítségével hozható létre:
$ olaj létrehozása
$ zeneszerző létrehozása-projekt üzemanyag / üzemanyag -prefer-dist
Következtetés - PHP keretek
A fenti dokumentációban több PHP-keretet idéztünk, amelyet több szolgáltatás hordozására használtak a kódfejlesztéshez. A követelmények és a követendő tervezési minták elemzését előbb megvitatják, mielőtt ezek közül bármelyiket kiválasztanák. A keretek sokszínűek voltak, és különféle plug-ineket nyújtottak a naplózáshoz és a metrikák nyomon követéséhez.
A Laravel által Lumennak nevezett keretet nagyra értékelik, miközben a mikroszolgáltatások fejlesztését keresik, mivel a mikroszolgáltatások architektúrája különbözik a monolitikus alkalmazásoktól, a naplózási mechanizmusok, az adatbáziskezelés, az Auth biztonság és a megvalósítás a kódolás előtt kiemelten foglalkoznak.
Egy másik dolog, amelyet a keretrendszer kiválasztásakor figyelembe kell venni, az a terület, amelyre az alkalmazást tervezték, akár a banki és a pénzügyi szolgáltatások, az ellátási lánc menedzsment, az élettudományok, a kiskereskedelem vagy a szociális hálózatok.
Mivel ezekre a domainekre alapozva be kell építeni a plug-ineket és a terveket, hogy vigyázzunk a disztribúciós nyomkövetésre, a szolgáltatás újrapróbálkozására stb.
Ezért a kódoló a hivatkozott keretek bármelyikével folytathatja a szolgáltatás tulajdonságainak az alkalmazáshoz szoros összefüggésben történő értékelését követően.
Ajánlott cikkek
Ez egy útmutató a PHP keretekhez. Itt megvitattuk a PHP keretek listáját, azok jellemzőivel és a telepítési lépésekkel. A további javasolt cikkeken keresztül további információkat is megtudhat -
- Mi a PHP? Melyek a felhasználások?
- Részletes útmutató mi a PHP tömb?
- A PHP programozás előnyei
- Bevezetés a PHP - be Teljes oktatóanyagok
- MariaDB vs MySQL | A legnépszerűbb Opensources adatbázisok összehasonlítása
- Kivonási funkció a PHP-ben Hogyan dolgozz?