Verkorte ifsetor() (vanaf PHP 5.3)
Je hebt nu (vóór PHP 6) de versnelde if-else syntax in PHP, namelijk:
Bijvoorbeeld:
Je hebt echter vaak de situatie dat een var alleen moet veranderen als een bepaalde variabele geset is, dus dit:
Zo ben je toch weer lang aan het typen. Dit is nu versneld gemaakt. In de PHP 6 versie die ik draai werkt het echter nog niet zoals verwacht:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$var = 'foobar';
$var = $var ?: 'default';
// dit levert $var='foobar'
unset($var);
$var1 = $var ?: 'default1';
// levert default1 en notice; die notice zou niet moeten
$var = $var1 ?: 'default2';
// levert default1
?>
$var = 'foobar';
$var = $var ?: 'default';
// dit levert $var='foobar'
unset($var);
$var1 = $var ?: 'default1';
// levert default1 en notice; die notice zou niet moeten
$var = $var1 ?: 'default2';
// levert default1
?>
De notice zou niet moeten komen, want dit is een verkorte versie voor ifsetor(). Namelijk:
Code (php)
Advies: nog niet gebruiken, INSTABIEL (notice)
« vorige pagina | volgende pagina »
Inhoudsopgave
- Installatie PHP 6 naast PHP 5
- Inleiding
- Bye@ Register_globals, magic_quotes, mysql_query()
- Namespaces (vanaf PHP 5.3)
- Label en goto
- Verkorte ifsetor() (vanaf PHP 5.3)
- Static keyword (vanaf PHP 5.3?)