Sinds deze week zit PHP 7 in de Arch repo, ben ik aan de slag gegaan met aantal nieuwe features.
Wel zijn er voor mij een paar verwarrend, vandaar dit topic.
De nieuwe namespace parameters ontzettend handig, zo kun je nu meerdere sub-namespaces definiëren:
Verder zijn de type declarations eindelijk toegevoegd.
Deze nieuwe feature vind ik wat vreemd:
Dit wordt gedaan d.m.v. een isset, terwijl ik een empty() logischer zou vinden. Helaas kun je dit niet doen:
Dan krijg je volgensmij empty op een isset?
Waarom empty? Dat is gezet is, wil nog niet zeggen dat het 'gevuld' is. Als voorbeeld op PHP.net wordt een $_GET gebruikt, en die wil je juist (in de meeste gevallen) niet leeg hebben.
Alleen merk ik wel op dat ik de PHP manual altijd zo cryptisch vind, en altijd ergens anders (op een blog/SO) moet kijken om te zien hoe ze echt bedoelen (praktijkvoorbeelden).
Ik heb dan ook de vraag of we de nieuwe functies wat verder zouden kunnen laten zien.
Wel zijn er voor mij een paar verwarrend, vandaar dit topic.
De nieuwe namespace parameters ontzettend handig, zo kun je nu meerdere sub-namespaces definiëren:
PHP:
1
| Namespace\{sub,sub} |
Verder zijn de type declarations eindelijk toegevoegd.
Deze nieuwe feature vind ik wat vreemd:
PHP:
1
| $v = $x ?? $z; |
Dit wordt gedaan d.m.v. een isset, terwijl ik een empty() logischer zou vinden. Helaas kun je dit niet doen:
PHP:
1
| $v = !empty($x) ?? $z; |
Dan krijg je volgensmij empty op een isset?
Waarom empty? Dat is gezet is, wil nog niet zeggen dat het 'gevuld' is. Als voorbeeld op PHP.net wordt een $_GET gebruikt, en die wil je juist (in de meeste gevallen) niet leeg hebben.
Alleen merk ik wel op dat ik de PHP manual altijd zo cryptisch vind, en altijd ergens anders (op een blog/SO) moet kijken om te zien hoe ze echt bedoelen (praktijkvoorbeelden).
Ik heb dan ook de vraag of we de nieuwe functies wat verder zouden kunnen laten zien.
[ Voor 29% gewijzigd door HollowGamer op 05-01-2016 14:24 ]