本文实例讲述了PHP实现函数内修改外部变量值的方法。分享给大家供大家参考,具体如下:
直接上代码,如下:
$a_str = 'ab';
function change_val(){
global $a_str; // 通过设置全局变量,修改变量值
//$a_str = 'abc';
$a_str = $a_str.'abc';
}
echo $a_str."
";
change_val();
echo $a_str."
";
echo str_repeat('#',20)."
";
$b_str = 'ab';
function change_val_1($s){
$s = 'abc';
//$s = $s.'abc';
return $s; // 通过返回值,修改变量值
}
echo $b_str."
";
$b_str = change_val_1($b_str);
echo $b_str."
";
echo str_repeat('#',20)."
";
$c_str = 'ab';
function change_val_2(&$c_str){//引用调用
//$c_str = 'abc';
$c_str = $c_str.'abc';
}
echo $c_str."
";
change_val_2($c_str);
echo $c_str."
";
运行结果:
ab
ababc
####################
ab
abc
####################
ab
ababc
总结:
尽量少用全局变量。全局变量会增加内存使用量。
传值调用会创建一个副本,数据量很大时,会影响性能。
引用调用时,函数接收的是变量地址,不会创建数据副本,效率高 。
希望本文所述对大家PHP程序设计有所帮助。