PHP 8.2: cosa c'è di nuovo?
La nuova versione di PHP è alle porte. Quali sono le nuove implementazioni da conoscere? Consultate questo articolo per scoprirlo!
Nel seguente articolo, spiegheremo come funziona Symfony Polyfill e come si relaziona con i progetti Symfony. Approfondiremo anche l'idea che questa libreria cerca di risolvere.
Nella maggior parte dei moderni PHP progettisi noterà una forte dipendenza dal file Polifill di Symfony biblioteca. In questo articolo, spiegheremo non solo come funziona e come si relaziona con Progetti Symfonyma approfondiremo anche l'idea del problema che cerca di risolvere.
PHP era in cattive acque da molto tempo. Era il 2005 quando Andrei Zmievski ha avviato un'iniziativa di progetto per portare il supporto nativo Unicode per PHP a causa di recensioni contrastanti e di molte preoccupazioni che PHP sta andando nella direzione sbagliata. Sviluppo di PHP La 6.x è stata avviata. Ma non fu mai terminato - e questa è una storia per un altro giorno. 10 anni dopo, da qualche parte tra il 2014 e il 2015, Dmitry Stogov, Xinchen Hui e Nikita Popov avviarono phpng
- che ha ottimizzato e rifattorizzato il motore Zend interno utilizzato da PHP.
E per gli anni passati, PHP sta crescendo più velocemente che mai, attualmente alla versione stabile 8.1.
A causa del rapido sviluppo di nuove funzionalità nel linguaggio, non solo gli sviluppatori hanno dovuto adattarsi a tali cambiamenti, ma anche le infrastrutture e i servizi di hosting.
Per garantire che noi sviluppatori possiamo utilizzare le nuove e migliori funzionalità del nostro amato linguaggio di programmazione. Polifill di Symfony è nato il progetto.
Questo progetto fa da backport alle funzionalità presenti nell'ultima versione di Versioni PHP e fornisce livelli di compatibilità per alcune estensioni e funzioni. È destinato a essere usato quando la portabilità attraverso Versioni PHP e le estensioni.
Questa è una pura descrizione di Polifill di Symfony ma cosa significa?
A causa della rapida evoluzione Lingua PHP e la personalizzazione del software degli ISP, la maggior parte degli sviluppatori si è trovata di fronte a una scelta semplice:
Ma dovevano mantenere la compatibilità con gli altri strumenti e servizi già utilizzati sia sul codice e dell'infrastruttura, quasi sempre utilizzando vecchie versioni di PHPDevo forse menzionare, caro lettore, il cosiddetto "fattore divertimento" di queste due soluzioni?
Per facilitare la strada agli sviluppatori, nel 2015 la comunità Open Source ha realizzato la prima versione stabile di Polyfill numerata 1.0. La vita degli sviluppatori è diventata più semplice e si può dire che Symfony Polyfill ha risolto una moltitudine di problemi, come la portabilità del codice tra piattaforme diverse, Versione PHP e ha reso molto più semplice il refactoring delle applicazioni e la riduzione del debito tecnologico.
Purtroppo, non tutti i problemi possono essere risolti con un unico strumento.
Per i complessi Progetti ITIl mantenimento di diverse versioni di ambienti per diversi clienti/filiali/dipartimenti è una procedura comune. Ciò comporta la necessità di sviluppare contemporaneamente molti rami diversi di applicazioni, spesso con requisiti funzionali diversi e con una propria trazione. Ho affrontato molte volte il problema di mantenere la stessa applicazione per diversi clienti su diversi ambienti PHP5 / PHP7 e la moltitudine di problemi legati all'incompatibilità delle librerie o delle loro dipendenze per le diverse versioni è semplicemente irrisolvibile utilizzando solo Polifill di Symfony.
A causa della rapida crescita delle funzionalità integrate in PHPMolti sviluppatori non hanno seguito il ritmo del cambiamento. Molte delle funzionalità offerte nelle versioni superiori di PHP sono facilmente realizzabili con librerie esterne, oppure gli sviluppatori semplicemente non avevano bisogno delle nuove funzionalità, come ad esempio Fibre PHP. Quando si seleziona squadra È una buona idea assicurarsi che le competenze siano adeguate o che il processo di consegna del codice sia reso più coerente da strumenti di analisi statica e dal rilevamento precoce degli errori di regressione di versione.
L'adozione di nuove funzionalità linguistiche è ancora piuttosto bassa e PHP 5 oltre la quota di 24% mostra chiaramente che un quarto dei progetti PHP sta eseguendo versioni inferiori alla 7.xche terminerà il suo supporto di sicurezza il 6 dicembre 2022. Ciò significa che al momento della stesura di questo post, oltre 25% di progetti Web basati su PHP saranno potenzialmente vulnerabili a tutte le nuove vulnerabilità di sicurezza entro la fine dell'anno. "Se funziona perché dovremmo preoccuparci"?
Dobbiamo adattarci ai cambiamenti linguistici il più rapidamente possibile e utilizzare le soluzioni più recenti il prima possibile. Durante un'eventuale migrazione di un progetto Legacy, vale la pena di includere Polifill di Symfony come aiuto e utilizzando tecniche come lo Strangler Pattern e la metodologia BDD, attualmente in voga, che è favolosamente facile da applicare alla Quadro Symfony. Quindi siamo davvero costretti a usare Polifill di Symfony?
Per saperne di più:
Sviluppo PHP: 5 cose da sapere
7 startup e scaleup che scuoteranno la scena del mercato nel 2022
Sviluppo PHP. Componente console di Symfony - Suggerimenti e trucchi