Introduce New Features in PHP 7

Utpal Biswas
Utpal Biswas

Seuraa

tammikuu 2, Se ei kuitenkaan tarkoita, että php olisi tällä hetkellä pysähtynyt. He päivittivät niin monia asioita tällä välin, mutta PHP 7 on täysin uusi julkaisu, jossa on joitakin innostuneita ominaisuuksia.

Nopeus on hämmästyttävä ominaisuus, jonka PHP 7 tuo tässä julkaisussa. Kehittäjät työskentelivät kovasti refaktoroidakseen PHP-koodia muistin kulutuksen vähentämiseksi ja suorituskyvyn lisäämiseksi, ja he varmasti onnistuivat siinä. tämän lisäksi on joitakin muita ominaisuuksia, jotka aion kuvata alla.

Kuten tiedämme, PHP:tä pidetään heikkotyyppisenä kielenä. Pohjimmiltaan tämä tarkoittaa sitä, että PHP ei vaadi tietotyyppien ilmoittamista. Muuttujiin liittyy edelleen tietotyyppejä, mutta voit tehdä radikaaleja asioita, kuten lisätä merkkijonon kokonaislukuun ilman, että siitä seuraa virhe. Tyyppi-ilmoitusten avulla voit määritellä, mitä pitäisi tapahtua, jotta saat odotetut tulokset. Tämä voi myös tehdä koodistasi helpommin luettavaa. Tarkastelemme joitakin konkreettisia esimerkkejä pian alla

Skalaarityyppivihjeitä

PHp 7:ssä on nyt lisätty skalaarityypit. Tarkemmin sanottuna: int, float, string ja bool.

Lisäämällä skalaarityyppihavainnot ja ottamalla käyttöön tiukat vaatimukset, toivotaan, että voidaan kirjoittaa oikeampia ja itsedokumentoivampia PHP-ohjelmia. Se antaa myös enemmän kontrollia koodiin ja voi tehdä koodista helpommin luettavaa.

Tässä on esimerkki, jossa ei ole strict

function total(float $a, float $b) {
return $a + $b;
}

ulostulo

total(2.8, "3.2");
// string "3.2" changed to float(3.2) no notice
//returns float(6)

ulostulo, jossa on varoitus

total(2, "1 week"); 
// int(2) changed to float(2.0) and string "1 week" changed to float(1.0) but you will get a "Notice: A non well formed numeric value encountered"
//returns float(3)

Jos tyyppi-ilmoituksessa ilmenee tyyppi-ilmoitusvirheitä, heitetään ”Fatal Error”, kun strict-tila on päällä. tässä on esimerkki

declare(strict_types=1);function total(float $a, float $b) {
return $a + $b;
}total(2, "1 week");
// Fatal error: Uncaught TypeError: Argument 2 passed to total() must be of the type float, string giventotal(2.5, 1);
// int(1) change to float(1.0)
//returns float(3.5)

kuten näemme, kun käytämme strict moodia ”on” varoituksesta tuli Error, joka on erittäin hyödyllinen ja jäsennelty tapa ymmärtää ja saada haluttu ulostulo koodipohjasta.

Palautustyyppi-ilmoitukset

PHP 7 tukee myös palautustyyppi-ilmoituksia (Return Type Declarations), jotka tukevat kaikkia samoja tyyppejä kuin argumentit. Paluutyypin määrittämiseksi lisätään kaksoispiste ja sen jälkeen tyyppi juuri ennen avaavaa sulkeista.

function total(float $a, float $b) : float {}

Uudet operaattorit :

PHP 7 tuo meille myös joitakin uusia operaattoreita. Ensimmäinen, johon tutustumme, on avaruusalusoperaattori. Avaruusalusoperaattori eli yhdistetty vertailuoperaattori on mukava lisä kieleen ja täydentää operaattoreita suurempi kuin ja pienempi kuin. like

$compare = 2 <=> 1
2 < 1? return -1
2 = 1? return 0
2 > 1? return 1

Null Coalesce Operator

Toinen uusi operaattori, Null Coalesce Operator, on käytännössä tarunhohtoinen if-set-or. Se palauttaa vasemmanpuoleisen operandin, jos se ei ole NULL, muutoin se palauttaa oikeanpuoleisen. like

$name = $firstName ?? "Guest";

Ennen 7.X:ää se oli like

if (!empty($firstName)) $name = $firstName;
else $name = "Guest";

Mikä tekee tästä vielä tehokkaamman, on se, että näitä voi pinota! Tämä operaatio tarkistaa jokaisen kohteen vasemmalta oikealle ja kun se löytää yhden, joka ei ole nolla, se käyttää sitä arvoa. like

$name = $firstName ?? $username ?? $placeholder ?? "Guest";

Tämä on hauskaa, eikö olekin ??

Jos olet valmis aloittamaan leikkimisen PHP7:n kanssa, käy heittämässä kaikki PHP 7:n muutokset. X

Vastaa

Sähköpostiosoitettasi ei julkaista.