In PHP 7: Return types
PHP 7 heeft afgelopen week een belangrijke feature erbij gekregen: Return types. Met deze feature kunnen functies geforceerd worden om een bepaald type terug te geven.
De syntax
De syntax is gelijk aan de syntax die gebruikt wordt in Hack: Een dubbele punt gevolgd door het type dat achter de argument lijst wordt geplaatst.
De functie sum mag in dit geval alleen een float teruggeven.
Geldige typen
Het type mag elke PHP type zijn (integer, float, string, boolean, etc.) of een class/interface naam. Bijvoorbeeld:
Het is op het moment niet geldig om null terug te geven wanneer het return type gedefinieerd is. Er is een lopende RFC om een ? prefix te gebruiken om aan te geven dat een type null of het aangegeven type mag zijn. Hier is momenteel nog geen beslissing over gemaakt.
Gebruik bij classes
Bij het overschrijven van een method mag het type niet anders zijn dan het eerder opgegeven type. De volgende code is bijvoorbeeld niet geldig:
Het is wel geldig om een type te definiëren wanneer de method eerder geen type definitie had.
Het is daarnaast ook verplicht om het type van een method te definiëren wanneer de parent method deze ook gedefinieerd heeft.
Geen één van de functies en methods in core PHP hebben op dit moment een return type gedefinieerd.
De volledige RFC is te vinden in de RFC lijst.
Argument Types
Er is nog een lopende RFC voor het definiëren van types voor argumenten. De stemming hiervoor zal komende week eindigen.
Gerelateerde nieuwsberichten
13/06/2024 PHP verhelpt kritiek beveiligingslek in Windows-versie
28/02/2024 LockBit website door politie gekraakt via mogelijk lek in PHP
08/05/2023 PHPhulp verhuisd
Er zijn 8 reacties op 'In php 7 return types'
Om te reageren heb je een account nodig en je moet ingelogd zijn.
PHP hulp
0 seconden vanaf nu