Blogger Information
Blog 87
fans 0
comment 0
visits 59078
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
第二章:4.变量的作用域
黄忠倚的博客
Original
564 people have browsed it

实例

<?php
echo '<h2>4.变量的作用域</h2>';
echo '<hr color="red">';

/医院
 *作用域只有三个
 *1.全局:函数之外创建的
 *2.函数:函数内创建
 *3.静态:函数内创建的,但是仅在函数中使用
 * 
 */

$siteName = 'PHP中文网www.php.cn';  //全局:只要不在函数里创建的,他就是全局

//全局变量数组
// $GLOBALS = ['siteName']  //全局

// 如果说:我们创建了一个全局变量叫$siteName,这个变量会自动成为当前数组中的一个元素。
// 这个数组的键名,就是当前创建的变量名;在任何地方引用这个数组,就相当于引用了这个全局变量。


/医院
 *函数:是脚本中具有特定功能的代码段,可以重复调用
 *基本语法:
 *	1.声明:function function(org) {#code...}
 *	2.表达式:$function = function (args) {#code...}
 *调用:按明调用(按名称调用,后面一定要加括号)  function(args)
 * 
 */

function hello ()
{
	//函数内部是不能直接访问到全局变量的

	global $siteName;  //关键字global 声明全局变量
	$userName = 'Kevin Wong';  //在函数内创建,叫局部

	// return '欢迎来到'.$siteName.',我是:'.$userName;
	return '欢迎来到'.$GLOBALS['siteName'].',我是:'.$userName;

}

echo hello();
echo '<hr color="red">';

// echo $userName;  //在外部也不能直接访问到全局变量的

//静态变量:
function myStatic()
{
	static $num = 1;  //$num变量前面加关键词,可限制一下,这样的话它就变成静态变量,之个变量之后在第一次之行之后赋值,后面不再赋值。

	// $num = 1;

	return '第'.$num.'次输出'.$num++.'<br>';
}

echo myStatic();
echo myStatic();
echo myStatic();
echo myStatic();
echo myStatic();


//超级全局变量:直接引用,不需要声明!
/医院
 * 超级全集全局变量:跨作用域,不跨脚本文件!
 * $_SERVER,$_COOKE,$_SESSION,$_GET,$_POST,$_REQUEST
 * $_REQUEST = $_GET + $_POST + $_COOKIE
 */

echo '<hr color="red">';

//可以在全局直接引用全局变量
echo '我的姓名是:'.$_GET['name'];

echo '<hr>';

//在函数中引用超级全局变量
function sayName ()
{
	return '我的姓名是:'.$_GET['name'];
}

echo sayName();

//超全局变量是系统预定义的,在用户创建的每一个php文件中,都是会自动创建,不用用户手工去创建

运行实例 »

点击 "运行实例" 按钮查看在线实例


Correction status:Uncorrected

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post