PHP 8.2: Co je nového?
Nová verze PHP je již za rohem. O jakých nových implementacích byste měli vědět? Podívejte se na tento článek a zjistěte to!
V následujícím článku vysvětlíme, jak Symfony Polyfill funguje a jak souvisí s projekty Symfony. Také se hlouběji ponoříme do myšlenky, kterou se tato knihovna snaží řešit.
Ve většině moderních PHP projekty, všimnete si silné závislosti na příkazu Symfony Polyfill knihovna. V tomto článku si vysvětlíme nejen to, jak funguje a jak souvisí s Projekty Symfony, ale také se budeme hlouběji zabývat myšlenkou problému, který se snaží řešit.
PHP byl dlouho ve špatném stavu. Bylo to v roce 2005, kdy Andrej Zmievski zahájil projekt přinést nativní podporu Unicode pro PHP kvůli smíšeným recenzím a mnoha obavám, že PHP se ubírá špatným směrem. Vývoj PHP 6.x byl spuštěn. Nikdy však nebyl dokončen - a to je příběh na jindy. O deset let později, někdy mezi lety 2014 a 2015, začali Dmitrij Stogov, Xinchen Hui a Nikita Popov s projektem phpng - projekt, který optimalizoval a refaktorizoval interní Zend Engine používaný systémem PHP.
A za poslední roky, PHP roste rychleji než kdykoli předtím a v současné době je ve stabilní verzi 8.1.

Vzhledem k rychlému vývoji nových funkcí jazyka se těmto změnám museli přizpůsobit nejen vývojáři, ale také poskytovatelé infrastruktury a hostingových služeb.
Abychom my, vývojáři, mohli používat nejnovější a nejlepší funkce našeho milovaného programovacího jazyka. Symfony Polyfill vznikl projekt.
Tento projekt backportuje funkce nalezené v nejnovějším Verze PHP a poskytuje vrstvy kompatibility pro některá rozšíření a funkce. Je určen k použití v případě přenositelnosti napříč zeměmi. Verze PHP a rozšíření je žádoucí.
Jedná se o čistý popis Symfony Polyfill ale co to znamená?
Vzhledem k rychle se vyvíjejícímu Jazyk PHP a nestandardní přizpůsobení softwaru poskytovatelů internetových služeb, většina vývojářů byla postavena před jednoduchou volbu:
Museli však zachovat kompatibilitu s ostatními nástroji a službami, které se již používají jak na kód a na straně infrastruktury - téměř vždy s použitím starších verzí PHP.Musím se, milý čtenáři, zmiňovat o takzvaném "faktoru zábavy" těchto dvou řešení?
Aby vývojářům usnadnila cestu, vytvořila komunita open source v roce 2015 první stabilní verze Polyfill s číslem 1.0. Život vývojářů se stal jednodušším a dá se říci, že Symfony Polyfill vyřešil řadu problémů, jako je například přenositelnost kódu mezi různými platformami, Verze PHP rozdíly a usnadnilo refaktorizaci aplikací a snížení technologického dluhu.
Bohužel ne všechny problémy lze vyřešit jedním nástrojem.
Pro komplexní IT projekty, udržování různých verzí prostředí pro různé zákazníky/oddělení/odbory je běžný postup. To vede k nutnosti vyvíjet současně mnoho různých větví aplikací, často s různými funkčními požadavky a s vlastní trakcí. Mnohokrát jsem se setkal s problémem udržování stejné aplikace pro různé zákazníky na různých prostředích PHP5 / PHP7 a množství problémů souvisejících s nekompatibilitou knihoven nebo jejich závislostí pro různé verze je prostě neřešitelné pouze pomocí Symfony Polyfill.
Vzhledem k rychlému nárůstu funkcí zabudovaných do PHP, mnoho vývojářů neudrželo krok s tempem změn. Mnoho funkcí nabízených ve vyšších verzích PHP lze snadno dosáhnout pomocí externích knihoven, nebo vývojáři jednoduše nepotřebovali nové funkce, jako např. PHP Vlákna. Při výběru tým členů, je dobré zajistit, aby byly dovednosti sladěny nebo aby byl proces dodávání kódu konzistentnější díky nástrojům statické analýzy a včasné detekci chyb při regresi verzí.

Přijetí nových jazykových funkcí je stále poměrně nízké a PHP 5 je více než 24% podíl jasně ukazuje, že čtvrtina projektů PHP používá verze nižší než 7.x., jejíž bezpečnostní podpora bude ukončena 6. prosince 2022. To znamená, že v době psaní tohoto příspěvku bude více než 25% webových projektů založených na PHP do konce roku potenciálně zranitelných vůči všem novým bezpečnostním chybám. "Když to funguje, proč bychom se tím měli zabývat"?
Měli bychom se co nejrychleji přizpůsobit jazykovým změnám a co nejdříve používat nejnovější řešení. Při případné migraci projektu Legacy je vhodné zahrnout i Symfony Polyfill jako pomocníka a s využitím technik, jako je Strangler Pattern a v současnosti módní metodika BDD, která se báječně snadno aplikuje na Rámec Symfony. Jsme tedy opravdu nuceni používat Symfony Polyfill?
Přečtěte si více:
PHP Vývoj: 5 věcí, které byste měli vědět
7 startupů a scaleupů, které v roce 2022 otřesou tržní scénou