您的位置:首页 > 其它

几道有关局部变量和全局变量的题目

2013-02-01 18:15 288 查看
php变量的主要两种类型,局部变量和全局变量。

定义一个函数,这个函数里的变量都是局部变量,它们只能在这个函数内部使用,return的值是这个函数的返回值。调用这个函数就会输出这个值,这个值可以是函数内的变量 也就是局部变量。作用域又叫变量的能见度,是不同的。全局变量只要是在这个页面里就能使用 。超全局变量 在所有页面都能使用。

学习过程中练习了一些题目,记录在此。

<?php
	/*函数*/
	function mysquare($b){
		$a = $b * $b * $b * $b ;
		//return $a;
	}
	$c = mysquare(3);
	echo $c;
	
	/*运行结果:页面显示空白,不输出任何结果。因为注释了返回语句,所以不会输出81.*/

	function print_A(){
		$A = "phpchina";
		echo "A值为:".$A."<p>";
		//return ($A);
	}
	$B = print_A();
	echo "B值为:".$B."<p>";

	/* 未返回值,所以B为空。
	A值为phpchina
	B值为:
	*/

	function egg( $a = 3, $b, $c = 4){
		$d = $a + $b + $c;
		return $d;
	}
	$e = egg('',6);
	echo "$e"."<br />";
	/* 
	结果为10
	实参从左向右匹配形参,$a被覆盖为0,$b=6,$c不变。
	*/
	
	function global_s($a, $b){
		echo $a."<br />";
		echo $b."<br />";
		//unset($b);
		//echo $b."<br />";
		$a += $b;	//12
		$b *= $b;	//36
		//unset($b);
		echo $a."<br />";
		echo $b."<br />";
	
	}
	$a = 6;
	$b = &$a;
	//$b = $a;
	//unset($a);
	global_s($a , $b);
	echo $a."<br />";
	echo $b;
	//
	/*
	unset()是注销定义的变量.因为PHP变量是不需要预先定义就可以使用.如果不unset($c),后面的代码如果用到同名的$c,PHP就会使用前面使用过的这个,如果不重新赋值就使用,可能会影响到正确性.
	函数内$a、$b是局部变量,函数体外为全局变量,所以互不影响,结果为:
	6
	6
	12
	36
	6
	6
	//被unset销毁的变量,会打印输出空。
	*/

?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐