PHP 7 10 lucruri pe care trebuie să le cunoașteți
Sunteți un dezvoltator web sau un proprietar de site? Site-urile dvs. rulează pe CMS bazate pe PHP, cum ar fi WordPress, Drupal, Joomla sau Magento? Apoi am o veste bună pentru dvs.: caracteristica-beta completă a noului PHP 7 a fost recent lansat. Versiunea 7.0.0 majoră conține atâtea caracteristici reci, pe care am decis să le dedicăm unui post întreg. Dar mai întâi trebuie să alunecăm în câteva mementouri.
Rețineți că PHP 7 este încă în faza de dezvoltare așa nu-l utilizați în producție până în noiembrie când versiunea finala va fi lansat. În cazul în care, în calitate de utilizator viitor, doriți să vă partajați corect din procesul de dezvoltare, vă puteți ajuta să descărcați cea mai recentă versiune beta, să jucați cu ea în mediul dvs. de testare și să raportați erorile pe care le-ați găsit pe parcursul testării. Pentru a afla când va avea loc următoarea versiune beta, iată graficul de proiect.
Cu asta din drum, să verificăm PHP 7.
1. Numele PHP 7 (nu 6)
Actuala versiune stabilă utilizează versiunea PHP 5.6. După o anumită dispută, echipa de dezvoltare a decis că va omite numele PHP 6 pentru următoarea versiune majoră. PHP 6 a existat deja în trecut ca un proiect experimental, dar nu a atins niciodată faza de producție.
Pentru a împiedica utilizatorii să amestece încercarea de mai înainte cu cea mai recentă dezvoltare, noua versiune majoră va funcționa sub numele de PHP 7.
2. Motorul noului motor Zend
Motorul Zend a alimentat PHP din 1999, când a fost introdus cu noua versiune PHP 4. Zend - nu confundat cu Zend Framework - este un motor de execuție open-source scris în C, care interpretează limbajul PHP. Se utilizează seria curentă din seria PHP 5.X Zend Engine II care a îmbunătățit funtionalitatea motorului inițial și adaugă o modelul obiect extensibil și a îmbunătățirea semnificativă a performanței la limbă.
PHP 7 primește o versiune nouă a motorului care se află sub numele de cod PHP # NG (Next Generation).
3. De două ori Viteza
Cel mai ușor de recunoscut avantaj al noului motor PHPNG este îmbunătățirea semnificativă a performanței. Echipa de dezvoltare a PHPNG a refacut motorul Zend, și a optimizat utilizarea memorie remarcabil.
Rezultatele? Puteți vedea valorile de performanță furnizate de echipa de performanță Zend de mai jos. Folosind PHP 7 nu numai codul dvs. va fi executat mai repede dar vei și tu au nevoie de mai puține servere pentru a servi aceeași cantitate de utilizatori.
4. Facilitează manipularea erorilor
Cel puțin, manipularea greșelilor fatale și greșite, greșite, nu au fost niciodată o sarcină ușoară pentru coderii PHP. Noul Excepțiile motorului vă va permite să înlocuiți aceste tipuri de erori cu excepții. Dacă excepția nu este capturată, PHP va continua să restituie aceleași erori fatale ca în seria curentă 5.X.
Noul \ EngineException obiectele nu se extind \Excepție Clasa de bază. Acest lucru asigură compatibilitatea înapoi și duce la două tipuri de excepții în ceea ce privește tratarea erorilor: tradiţional și excepțiile motorului.
Pentru a permite programatorilor să capteze ambele, PHP 7 introduce un nou partajată clasa părinte sub numele de \ BaseException.
5. Suport pentru sistemele Windows pe 64 de biți
PHP este un membru proeminent al stack-ului LAMP, ceea ce înseamnă că mediul său nativ este Linux - dar este, de asemenea, posibil să-l rulați pe un sistem Windows. Seria 5.X nu oferă încă suport de fișiere pe întregul număr de 64 de biți sau de fișiere mari, astfel încât până acum au fost luate în considerare dezvoltările de x64 experimental.
PHP 7 va schimba acest lucru introduce suport consistent pe 64 de biți ceea ce înseamnă că atât numerele native pe 64 de biți, cât și fișierele mari vor fi suportate, permițându-vă să rulați cu încredere limba pe sistemul dvs. de Windows pe 64 de biți în viitor.
6. Operatori de navlosire noi și operatori de colapsare nul
Operatorul de spațiale funcționează sub denumirea oficială de Operator de Comparare Combinată. Notația noului operator arată astfel: <=>
(un fel de o navă spațială simplificată, dacă vă imaginați că este corectă).
Operatorul de spațiu returnează 0 dacă ambii operanzi sunt egali, 1 dacă stânga este mai mare și -1 dacă dreapta este mai mare. Se mai numește a operatorul de comparare cu trei căi, și există deja în alte limbi de programare populare precum Perl și Ruby.
Operatorul Null Coalescing este notat cu două semne de întrebare (??). Puteți să o utilizați atunci când doriți să verificați dacă există ceva și să returnați o valoare implicită, în caz că nu există. Operatorul de coalesce returnează rezultatul primului său operand dacă acesta există și nu este nul, iar al doilea operand în orice alte cazuri.
Iată cum noul operator reduce timpul petrecut cu declarațiile de bază:
7. Permite declarații precise de tip
Ați dorit vreodată să împiedicați valorile returnate neintenționate prin declararea tipului de returnare a unei funcții? Ei bine, noul PHP 7 permite dezvoltatorilor să sporească calitatea codului lor cu ajutorul declarațiilor de tip return.
Imaginea de mai jos descrie un caz de utilizare foarte simplu în cazul în care foo () funcția trebuie să returneze o matrice. Consultați exemple mai complicate aici.
Pentru a îmbunătăți funcția chiar mai mult, PHP 7 introduce 4 declarații noi de tip pentru tipuri scalare: int, float, șir și bool. Noile tipuri scalare permit dezvoltatorilor să denumească faptul că așteaptă ca numerele întregi, flotoarele, șirurile sau booleanii să fie returnate. Noile tipuri scalare introduse de PHP 7 vor fi de asemenea susținute de argumentul Tip Sugestii care permite dezvoltatorilor să forțeze tipul de parametri de la seria PHP 5.X.
8. Adaugă clase anonime
PHP 7 vă permite să utilizați clase anonime, deja o practică bine stabilită în alte limbi orientate pe obiecte, cum ar fi C # și Java. O clasă anonimă este o clasă fără nume. Obiectul pe care îl instantează are aceeași funcționalitate ca un obiect al unei clase denumite.
Sintaxa este aceeași cu cea la care suntem obișnuiți în clasele tradiționale de PHP, lipsește doar numele. Dacă clasele anonime sunt folosite bine, pot accelera codarea și timpul de execuție. Clasele anonime sunt excelente atunci când o clasă este utilizată o singură dată în timpul execuției și în cazurile în care nu este necesară documentarea unei clase.
9. Facilitează importurile din același spațiu de nume
Noua caracteristică de utilizare a declarațiilor de grup va fi pentru cei care doriți importați mai multe clase din același spațiu de nume. Noua sintaxă taie verbozitatea, face codul tău și mai ușor pe ochi și te economisește o mulțime de timp de scriere.
De asemenea, va fi mai ușor să citiți și să depanați codurile, deoarece declarațiile de utilizare în grup vă ajută să identificați importurile care aparțin aceluiași modul.
10. Curăță camera
Scopul PHP 7 a fost să elibereze spațiul pentru a permite îmbunătățirea, astfel încât a fost necesar să scapi de multe funcționalități depreciate și API-uri de server și extensii vechi și nesuportate. Dacă doriți să verificați detalii detaliate, faceți clic aici și aici.
Toate elementele eliminate au fost depreciate pentru un timp în PHP 5, deci cel mai probabil nu le-ați folosit de mult timp. Cu toate acestea, rețineți dacă aveți o aplicație veche rulează pe versiuni mai vechi de PHP noul PHP 7 poate ar putea sparge codul.