<?php function valRef($x, &$y) { var_dump($x, $y); $x = 'changed.x'; $y = 'changed.y'; } function refVal(&$x, $y) { var_dump($x, $y); $x = 'changed.x'; $y = 'changed.y'; } echo "\n\n-- Val, Ref --\n"; $a = 'original.a'; valRef($a, $a); var_dump($a); echo "\n\n-- Ref, Val --\n"; $b = 'original.b'; refVal($b, $b); var_dump($b);
<?php function refVal($x) { global $a; $a = 'changed.a'; var_dump($x); var_dump(func_get_arg(0)); } $a = "original.a"; $ref =& $a; refVal($a);