El 26 de novembre del 2020, PHP 8 es va publicar en la seva primera “release”. Aquesta darrera versió de PHP ofereix noves funcionalitats que prometen millorar la seguretat i el rendiment dels nostres webs WordPress.
WordPress Core ja és compatible amb PHP 8.0 des de la seva versió 5.6
Ara bé, la qüestió és, podem ja actualitzar el nostre web?
En aquest post analitzem els principals canvis i la compatibilitat amb WordPress.
Table of Contents
- Quines millores de rendiment porta PHP 8?
- És WordPress compatible amb PHP 8?
- Com esbrinar si el meu lloc WordPress és compatible amb PHP 8?
- Provar el meu WordPress amb PHP 8
- La nostra recomanació:
Quines millores de rendiment porta PHP 8?
La característica de rendiment més esperada que ve amb PHP 8 és JIT, la compilació “Just in time”.
PHP és un llenguatge interpretat, cosa que significa que es tradueix a codi de màquina just quan s’executa. JIT realitza un seguiment del codi que s’utilitza amb més freqüència i intenta optimitzar-ne la traducció a codi de màquina perquè pugui reutilitzar-se. Això pot resultar en una millora important del rendiment en determinades situacions.
La “RFC proposal” descriu JIT de la següent manera:
“PHP JIT s’implementa com una part gairebé independent de OPcache. JIT pot estar o no habilitat en temps de compilació i execució de PHP. Quan està habilitat, el codi natiu dels arxius PHP s’emmagatzema en una regió addicional de la memòria compartida OPcache i “op_array→opcodes[].handlers” manté els punters als punts d’entrada del codi JIT”.
https://wiki.php.net/rfc/jit
Les proves de compilació de PHP 8 mostren que JIT faria que les càrregues de treball intensives en CPU s’executessin significativament més ràpid.
No obstant això, recorda que el principal coll d’ampolla de WordPress és la seva base de dades. La major part del temps d’espera no prové de l’execució de PHP, sinó del temps de procés de MySQL, que no es pot resoldre amb l’ajuda del compilador JIT.
És WordPress compatible amb PHP 8?
Compte! Aquesta és una actualització de les anomenades “Major”. Això vol dir que incorpora gran quantitat de canvis que trenquen la compatibilitat amb versions anteriors.
Un dels canvis més importants a PHP 8 té a veure amb l’escriptura estricta, el “strict typing”. Moltes de les funcions integrades ara són més exigents amb l’entrada que accepten, i PHP 8 en si mateix és més estricte sobre com es passa l’entrada a les funcions.
Un altre d’important, és la gran quantitat de “warnings” de PHP que s’han canviat a “error”. Aquest és un problema important de compatibilitat. La conversió dels “warning” en excepcions d’error provocant l’aturada de l’execució de l’escript.
Molts dels problemes que anteriorment generaven avisos “notices” ara generen advertiments “warnings”, i els problemes que anteriorment generaven “warnings” ara generen errors.
L’equip Core de WordPress ha estat treballant des de la versió 5.6 en tots aquests codis obsolets. Però, tenint en compte que WordPress mai s’usa de forma aïllada, sempre instal·lem temes i extensions de tercers, poder executar el nostre website de WordPress amb PHP 8 no implica compatibilitat “total”.
Com esbrinar si el meu lloc WordPress és compatible amb PHP 8?
La compatibilitat amb PHP 8, tenint en compte l’amplíssim ecosistema d’extensions i temes, és gairebé impossible determinar-la, menys encara si tenim en compte les combinacions de temes i extensions entre si.
Per aquesta raó, la nostra recomanació és que provis el teu website en un entorn de proves, separat de la teva site producció.
Provar el meu WordPress amb PHP 8
Si no tens PHP 8 amb el teu proveïdor actual, o el teu allotjament no té un entorn de proves “staging”, que et permeti fer una còpia o clon del teu lloc, registri’s! en 10 segons.
A wetopi et proporcionem servidors de desenvolupament GRATUÏTS (inclosa la migració d’una còpia del teu web)
A wetopi, sigui quin sigui el teu pla, gratuït o de pagament, pots canviar la versió de PHP en qualsevol moment i amb un simple clic!
Tens engines PHP des de la versió 5.6 a la PHP 8
Provar el meu web WordPress en un servidor staging wetopi
- Inicia sessió a wetopi i obre la pàgina detalli de la teva web.
- Desplega el “Menú Opcions” del servidor que vulguis testar i fes clic en l’opció Clonar:
- Per a canviar la versió de PHP en el teu nou servidor de “staging”: desplega de nou el “Menú Opcions” i a la secció d’Opcions avançades, trobaràs la llista de “engines”. Fes clic sobre v8.0 perquè el server arenqui amb la nova versió PHP 8:
La nostra recomanació:
PHP 8 és l’última versió de PHP a hores d’ara. Aquesta versió presenta el motor JIT del que els desenvolupadors, poc a poc, n’aniran traient major partit proporcionant més eficiència i rendiment. També hem de tenir en compte que PHP 7.4 arribarà al final de la seva vida útil al novembre de 2022 i ja no tindrà actualitzacions de seguretat.
Dit això la nostra recomanació és:
En entorn de proves:
— verifica amb deteniment la compatibilitat del teu tema i extensions WordPress. I si tot va bé actualitza. —
Resumidament, som uns techies apassionats per WordPress que hem creat Wetopi, un Allotjament WordPress Gestionat, per minimitzar la fricció a la que tot professional s’enfronta en treballar i allotjar projectes WordPress.
Inclou servidors de desenvolupament Gratis.
No cal tarjeta de crèdit.