3v4l.org

run code in 300+ PHP versions simultaneously
<?php # similar to $source array, but implemented using a function function getSource() { return [ 'subarray' => ['item' => 'old value ---'] ]; } # $ref3 is assigned to result of getSource() right in the foreach() foreach ( $ref3 = getSource() as &$subarray ) { $subarray['item'] = 'NEW value'; echo $subarray['item'], PHP_EOL; echo $ref3['subarray']['item'], PHP_EOL; } echo PHP_EOL;
Output for 7.0.0 - 7.0.20, 7.1.0 - 7.1.20, 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.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
NEW value old value ---
Output for 5.5.24 - 5.5.35, 5.6.8 - 5.6.28
NEW value NEW value

preferences:
172.36 ms | 402 KiB | 183 Q