本文實例講述了PHP實現(xiàn)函數(shù)內修改外部變量值的方法。分享給大家供大家參考,具體如下:
直接上代碼,如下:
$a_str = 'ab'; function change_val(){ global $a_str; // 通過設置全局變量,修改變量值 //$a_str = 'abc'; $a_str = $a_str.'abc'; } echo $a_str."<br>"; change_val(); echo $a_str."<br>"; echo str_repeat('#',20)."<br>"; $b_str = 'ab'; function change_val_1($s){ $s = 'abc'; //$s = $s.'abc'; return $s; // 通過返回值,修改變量值 } echo $b_str."<br>"; $b_str = change_val_1($b_str); echo $b_str."<br>"; echo str_repeat('#',20)."<br>"; $c_str = 'ab'; function change_val_2(&$c_str){//引用調用 //$c_str = 'abc'; $c_str = $c_str.'abc'; } echo $c_str."<br>"; change_val_2($c_str); echo $c_str."<br>";
運行結果:
ab
ababc
####################
ab
abc
####################
ab
ababc
總結:
- 盡量少用全局變量。全局變量會增加內存使用量。
- 傳值調用會創(chuàng)建一個副本,數(shù)據(jù)量很大時,會影響性能。
- 引用調用時,函數(shù)接收的是變量地址,不會創(chuàng)建數(shù)據(jù)副本,效率高 。
希望本文所述對大家PHP程序設計有所幫助。