在php页面中声明的变量叫全局变量
函数内的变量叫局部变量
$a=22;
function t(){
$b=99;
echo $a;
}
t();
echo $b;
//声明全局变量global
function t2(){
global $a;
echo $a;
}
t2();
//超全局变量在页面的任何部分,包括函数,方法等,都可以直接访问
function t3(){
print_r($_GET);
}
t3();
PHP中,
函数运行时, 有其自己,独立的变量空间.
函数体内的变量,与外界的变量,无关.
即使是变量的名字相同.
**/
/**
当函数调用时,系统为其申请一块独立的"调用空间"
函数体内的变量,在其独立的"调用空间内",
与外界的变量无关.
内部叫:局部变量
外部叫:全局变量
**/
function t2() {
echo $num;
}
t2();
// 局部内,即t2的空间内,有$num变量吗?
// 没有,虽然全局内有$num,但PHP中,函数并不会去全局寻找$num
// 简单说:PHP函数内的变量,就局限在函数的{}内.
/*
函数调用结束后,申请的独立的"调用空间",就释放掉.
下次,再调用,再申请,函数还得从头初始化.
2.
mysql_fetch_assoc与mysql_fetch_array区别
mysql_fetch_assoc 得到的是关联数组。
mysql_fetch_array 可以得到关联数组也可以得到索引数组,也可以二者都有。
下面以一个例子进行说明它们的区别:
假如从数据库教程取出一个用户的用户名和密码
username password
test 123456
用assoc 结果是array([username]=>'test',[password]=>'123456')
用array 根据参数不同结果可能是以下三种之一
array([username]=>'test',[password]=>'123456')
array([0]=>'test',[1]=>'123456')
array([username]=>'test',[password]=>'123456',[0]=>'test',[1]=>'123456')
提示和注释
注释:mysql_fetch_assoc() 和用 mysql_fetch_array() 加上第二个可选参数 MYSQL_ASSOC 完全相同。它仅仅返回关联数组。这也是 mysql_fetch_array() 初始的工作方式。
提示:如果在关联索引之外还需要数字索引,用 mysql_fetch_array()。
注释:本函数返回的字段名是区分大小写的