php-parser/test/code/parser/stmt/loop/foreach.test

139 lines
2.6 KiB
Plaintext
Raw Normal View History

2011-11-27 11:20:35 +01:00
Foreach loop
-----
<?php
// foreach on variable
foreach ($a as $b) {}
foreach ($a as &$b) {}
foreach ($a as $b => $c) {}
foreach ($a as $b => &$c) {}
foreach ($a as list($a, $b)) {}
foreach ($a as $a => list($b, , $c)) {}
2011-11-27 11:20:35 +01:00
// foreach on expression
foreach (array() as $b) {}
// alternative syntax
foreach ($a as $b):
endforeach;
-----
array(
0: Stmt_Foreach(
expr: Expr_Variable(
name: a
)
keyVar: null
byRef: false
2011-11-27 11:20:35 +01:00
valueVar: Expr_Variable(
name: b
)
stmts: array(
)
)
1: Stmt_Foreach(
2011-11-27 11:20:35 +01:00
expr: Expr_Variable(
name: a
)
keyVar: null
byRef: true
2011-11-27 11:20:35 +01:00
valueVar: Expr_Variable(
name: b
)
stmts: array(
)
2011-11-27 11:20:35 +01:00
)
2: Stmt_Foreach(
expr: Expr_Variable(
name: a
)
2011-11-27 11:20:35 +01:00
keyVar: Expr_Variable(
name: b
)
byRef: false
valueVar: Expr_Variable(
name: c
)
stmts: array(
)
2011-11-27 11:20:35 +01:00
)
3: Stmt_Foreach(
expr: Expr_Variable(
name: a
)
2011-11-27 11:20:35 +01:00
keyVar: Expr_Variable(
name: b
)
byRef: true
valueVar: Expr_Variable(
name: c
)
stmts: array(
)
)
4: Stmt_Foreach(
expr: Expr_Variable(
name: a
)
keyVar: null
byRef: false
valueVar: Expr_List(
vars: array(
0: Expr_Variable(
name: a
)
1: Expr_Variable(
name: b
)
)
)
stmts: array(
)
)
5: Stmt_Foreach(
expr: Expr_Variable(
name: a
)
keyVar: Expr_Variable(
name: a
)
byRef: false
valueVar: Expr_List(
vars: array(
0: Expr_Variable(
name: b
)
1: null
2: Expr_Variable(
name: c
)
)
)
2011-11-27 11:20:35 +01:00
stmts: array(
)
)
6: Stmt_Foreach(
2011-11-27 11:20:35 +01:00
expr: Expr_Array(
items: array(
)
)
keyVar: null
byRef: false
2011-11-27 11:20:35 +01:00
valueVar: Expr_Variable(
name: b
)
stmts: array(
)
)
7: Stmt_Foreach(
2011-11-27 11:20:35 +01:00
expr: Expr_Variable(
name: a
)
keyVar: null
byRef: false
2011-11-27 11:20:35 +01:00
valueVar: Expr_Variable(
name: b
)
stmts: array(
)
2011-11-27 11:20:35 +01:00
)
)