fix(compiler): 修复对未定义变量使用 ??= 时的编译错误 #20
Merged
韩天峰
merged 2 commits from fix-assign-coalesce-undefined-var into master 1 month ago
2 changed files with 37 additions and 4 deletions
@ -0,0 +1,28 @@ |
|||||||
|
--TEST-- |
||||||
|
assign coalesce on undefined variable |
||||||
|
--FILE-- |
||||||
|
<?php |
||||||
|
$a ??= 123; |
||||||
|
var_dump($a); |
||||||
|
|
||||||
|
$b ??= 'foo'; |
||||||
|
$b ??= 'bar'; |
||||||
|
var_dump($b); |
||||||
|
|
||||||
|
$c ??= null; |
||||||
|
var_dump(isset($c)); |
||||||
|
$c ??= 'after-null'; |
||||||
|
var_dump($c); |
||||||
|
|
||||||
|
for ($i = 0; $i < 2; $i++) { |
||||||
|
$d ??= printf("default\n"); |
||||||
|
} |
||||||
|
var_dump($d); |
||||||
|
?> |
||||||
|
--EXPECT-- |
||||||
|
int(123) |
||||||
|
string(3) "foo" |
||||||
|
bool(false) |
||||||
|
string(10) "after-null" |
||||||
|
default |
||||||
|
int(8) |
||||||
Loading…
Reference in new issue