3v4l.org

run code in 300+ PHP versions simultaneously
<?php echo 'Getting reference to a variable that is not yet set.' . "\n"; $ampA = &$a; for ($a = 0; $a < 10; $a++) { echo $ampA . ', '; } echo "\n\n"; $i = 0; echo 'Getting reference to an existing scalar variable.' . "\n"; $ampI = &$i; for ($i = 0; $i < 10; $i++) { echo $ampI . ', '; } echo "\n\n"; $arr = array(); echo 'Getting reference to an existing array.' . "\n"; $ampArr = &$arr; for ($i = 0; $i < 10; $i++) { $arr['i'] = $i; echo $ampArr['i'] . ', '; } echo "\n\n"; $secondArr = array(); echo 'Getting reference to an array element that does not exist yet.' . "\n"; $ampSecondArrJ = &$secondArr['j']; for ($i = 0; $i < 10; $i++) { $secondArr['j'] = $i; echo $ampSecondArrJ . ', '; } echo "\n\n"; $foreachedArr = array(); $ampForeachedVal = &$foreachedVal; $foreachedArr = [[0],[1],[2],[3],[4],[5],[6],[7],[8],[9]]; echo 'Getting reference to a value created by a foreach.' . "\n"; foreach ($foreachedArr as $foreachedVal) { echo $ampForeachedVal[0] . ', '; }
Output for 5.6.38, 7.1.0 - 7.1.24, 7.2.0 - 7.2.33, 7.3.16 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.31, 8.2.0 - 8.2.26, 8.3.0 - 8.3.14, 8.4.1
Getting reference to a variable that is not yet set. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, Getting reference to an existing scalar variable. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, Getting reference to an existing array. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, Getting reference to an array element that does not exist yet. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, Getting reference to a value created by a foreach. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,

preferences:
58.68 ms | 408 KiB | 5 Q