mirror of
https://github.com/danog/PHP-Parser.git
synced 2024-12-02 17:28:27 +01:00
7eac2cfd8b
A Nop statement will be inserted into statement lists if there are any trailing comments in the list (which would otherwise not be associated with any node). The pretty printer output currently still contains a superfluous newline.
103 lines
1.8 KiB
Plaintext
103 lines
1.8 KiB
Plaintext
If/Elseif/Else
|
|
-----
|
|
<?php
|
|
|
|
if ($a) {}
|
|
elseif ($b) {}
|
|
elseif ($c) {}
|
|
else {}
|
|
|
|
if ($a) {} // without else
|
|
|
|
if ($a):
|
|
elseif ($b):
|
|
elseif ($c):
|
|
else :
|
|
endif;
|
|
|
|
if ($a): endif; // without else
|
|
-----
|
|
array(
|
|
0: Stmt_If(
|
|
cond: Expr_Variable(
|
|
name: a
|
|
)
|
|
stmts: array(
|
|
)
|
|
elseifs: array(
|
|
0: Stmt_ElseIf(
|
|
cond: Expr_Variable(
|
|
name: b
|
|
)
|
|
stmts: array(
|
|
)
|
|
)
|
|
1: Stmt_ElseIf(
|
|
cond: Expr_Variable(
|
|
name: c
|
|
)
|
|
stmts: array(
|
|
)
|
|
)
|
|
)
|
|
else: Stmt_Else(
|
|
stmts: array(
|
|
)
|
|
)
|
|
)
|
|
1: Stmt_If(
|
|
cond: Expr_Variable(
|
|
name: a
|
|
)
|
|
stmts: array(
|
|
)
|
|
elseifs: array(
|
|
)
|
|
else: null
|
|
)
|
|
2: Stmt_If(
|
|
cond: Expr_Variable(
|
|
name: a
|
|
)
|
|
stmts: array(
|
|
)
|
|
elseifs: array(
|
|
0: Stmt_ElseIf(
|
|
cond: Expr_Variable(
|
|
name: b
|
|
)
|
|
stmts: array(
|
|
)
|
|
)
|
|
1: Stmt_ElseIf(
|
|
cond: Expr_Variable(
|
|
name: c
|
|
)
|
|
stmts: array(
|
|
)
|
|
)
|
|
)
|
|
else: Stmt_Else(
|
|
stmts: array(
|
|
)
|
|
)
|
|
comments: array(
|
|
0: // without else
|
|
)
|
|
)
|
|
3: Stmt_If(
|
|
cond: Expr_Variable(
|
|
name: a
|
|
)
|
|
stmts: array(
|
|
)
|
|
elseifs: array(
|
|
)
|
|
else: null
|
|
)
|
|
4: Stmt_Nop(
|
|
comments: array(
|
|
0: // without else
|
|
)
|
|
)
|
|
) |