求助函数里面的全局变量是怎么回事
php吧
全部回复
仅看楼主
level 13
凝戈🍺 楼主
<?php
$a1 = "WILLIAM";
$a2 = "henry";
$a3 = "gatES";
echo $a1 . " " . $a2 . " " . $a3 . "<br />";
fix_names();
echo $a1 . " " . $a2 . " " . $a3;
function fix_names()
{
global $a1; $a1 = ucfirst(strtolower($a1));
global $a2; $a2 = ucfirst(strtolower($a2));
global $a3; $a3 = ucfirst(strtolower($a3));
}
?>
为什么新定义的全局变量和外面的局部变量有一样的 值
2014年05月31日 09点05分 1
level 3
不过不定义全局,那只有函数本身可以访问整个变量,定期了全局,函数外部照样可以访问
2014年05月31日 09点05分 2
可是局部变量之前就已经定义了啊
2014年05月31日 09点05分
回复 time是你爹 :函数里的变量,和函数外部的变量虽然同名,但是不一样,只有把函数内的同名变量定义成全局的,才能在函数内部访问函数外部的值
2014年05月31日 09点05分
回复 alex_311 :也就是说,将函数内部的变量定义成全局的话,会将函数外部的在局部变量联系到一起,是二者成为一个,且为全局,并且新的全局变量和原来的局部变量有相同值
2014年05月31日 09点05分
1