Mitä on Type Hinting PHP:ssä?

Mita On Type Hinting Php Ssa



PHP-tyypin vihje on erittäin hyödyllinen ominaisuus, joka on ollut saatavilla PHP 5:stä lähtien. Ennen tätä versiota PHP-funktiot eivät vaatineet mitään tiettyjä tietotyyppejä ilmoittamista argumenteissaan tai parametreissaan. PHP 5:n käyttöönoton myötä kehittäjät voivat nyt määrittää tietotyyppejä PHP-funktioilleen käyttämällä ominaisuutta, joka tunnetaan nimellä tyyppivihje. Tämä voi olla erityisen hyödyllistä päivitettäessä tiettyä esiintymää PHP-ohjelmassa.

Tässä artikkelissa perehdymme PHP:hen tyyppi vihjailu kykyjä ja tutkia molempia heikko ja tiukka tyyppi vihjailu .

Mikä on PHP Type Hinting?

Tyyppi vihjailee toimii ohjelmointiterminä, jonka avulla voit määrittää odotettujen argumenttien tietotyypin funktiossa. Esimerkiksi kun kirjoitat an 'lisätä' -funktion avulla voit ilmoittaa, että parametrin tulee olla kokonaisluku. Jos kutsut funktiota millä tahansa muulla kuin kokonaisluvulla, tapahtuu virhe, joka ilmoittaa, että kokonaisluku vaaditaan. PHP tarjoaa kahdenlaisia ​​vihjeitä skalaari- ja palautustyyppisille ilmoituksille:







Mikä on heikkotyyppinen vihjailu?

Heikko tyyppinen vihje on PHP:n oletustoimintatapa, joka ei tuota virheitä tyyppimäärittelyn epäsuhtatilanteissa. Toisin sanoen, heikko tyyppinen vihjailu sallii PHP:n suorittaa koodin ilman virhettä, vaikka parametrin tietotyyppi ei vastaisi aiottua tyyppiä.



Esimerkki



Harkitse esimerkkiä, joka toteuttaa heikko tyyppinen vihjailu PHP:ssä.






$num1 = kaksikymmentä ;
$num2 = 3,16537 ;
toiminto moni ( kellua $num1 , int $num2 )
{
palata $num1 * $num2 ;
}
kaiku 'Laskettu arvo on:' , moni ( $num1 , $num2 ) ;
?>

Yllä olevassa koodissa funktio moni ottaa kaksi parametria, $num1 tyyppiä float ja $num2 tyyppiä int, mutta argumentteina välitetyt arvot ovat erityyppisiä. Tyyppierosta huolimatta koodi suoritetaan ilman virhettä tai kohtalokasta virhettä, mikä liittyy heikko tyyppinen vihjailu .

Lähtö



Mikä on tiukka tyyppi vihjailu?

Tiukka tyyppinen vihje PHP:ssä on tila, joka pakottaa tiukka kirjoitus ja heittää a Kohtalokas virhe jos tapahtuu tyyppimäärittelyvirhe. Vain täsmälleen ilmoitustyypin muuttujat hyväksytään, ja mikä tahansa muu tyyppi johtaa a Tyyppivirhe .

Käyttää tiukka tyyppi vihjailu , tiedoston ensimmäisen lauseen on oltava (tiukat_tyypit=1) , tai muuten tapahtuu kääntäjävirhe. Tämä tila vaikuttaa vain tiettyyn tiedostoon, jossa sitä käytetään, eikä sitä voida ohittaa ajon aikana, koska se on kokonaan käännösaikaista.

Esimerkki

Harkitse esimerkkiä, joka toteuttaa tiukat tyyppivihjeet PHP:ssä.


julistaa ( tiukat_tyypit = 1 ) ;
$num1 = kaksikymmentä ;
$num2 = 3,16537 ;
toiminto moni ( kellua $num1 , int $num2 )
{
palata $num1 * $num2 ;
}
kaiku 'Laskettu arvo on:' , moni ( $num1 , $num2 ) ;
?>

Yllä oleva esimerkki koskee tiukka tyyppi vihjailu koska se sisältää 'declare (strict_types=1)' lausunto, joka mahdollistaa tiukka tyyppi tarkistamassa tiedostoa. Kaiken tyyppiset ilmoitusvirheet johtavat kohtalokkaaseen virheeseen.

Lähtö

Yllä oleva koodi antaa virheen, koska kelluvaan arvoon päästään käyttämällä int:tä ja kokonaislukuarvoon haetaan float-tietotyyppiä.

Johtopäätös

Tyyppi vihjailee PHP:ssä antaa kehittäjille mahdollisuuden määrittää odotettujen argumenttien tietotyypit funktiossa. PHP tarjoaa kahdenlaisia ​​vihjeitä: heikko tyyppinen vihjailu ja tiukka tyyppi vihjailu . Heikko tyyppinen vihje on oletustoiminto, joka ei tuota virheitä tai vakavia virheitä tyyppimäärittelyn epäsopivuuden sattuessa. tiukka tyyppi vihjailu pakottaa tiukan kirjoittamisen ja antaa Fatal Error -ilmoituksen, jos esiintyy tyyppimäärittelyvirhe. Kehittäjien tulee valita sopiva tyyppivihjeiden tekniikka omien vaatimustensa perusteella.