博客列表 >变量的作用域2018-04-13上传

变量的作用域2018-04-13上传

张鑫的博客
张鑫的博客原创
2018年04月13日 17:15:09613浏览

实例

<?php
echo '<h1>变量的作用域</h1>';
echo '<hr>';
//变量的作用域有:全局、局部、静态
// 1.全局:函数之外创建,仅在当前脚本除函数之外的地方使用;
// 2.局部:函数内部创建,仅能在函数中使用,外部不可访问;
// 3.静态:函数内部创建,必须且仅能在函数中声明和使用,函数执行完成它的值不丢失;

$name = '张鑫';//全局变量
echo $name;//张鑫
echo $GLOBALS['name'];//张鑫(和$name一样),在函数内也可以访问


echo '<hr>';
function text()
{
	// global $name;//引用全局变量,使用全局变量数组,不必声明引入
	$job = 'php程序高手';
	return $GLOBALS['name'].'是'.$job;
	// return $name;
}

echo text().'<hr>';//函数调用


function text2()
{
	static $scr = 1;
	return '我是第'.$scr++.'个'.'<br>';//先输出,后加1
}

echo text2();
echo text2();
echo text2();
echo text2();
echo text2();


// 超全局变量:$_SERVER,$_COOKIE,$_SESSION,$_GET,$_POST,$_REQUEST
// 1. 属预定义变量,全部是数组,拿来就用,不需要声明;
// 2. 跨作用域,在全局和局部(函数内部)都可以直接使用;
// 3. 跨作用域不是跨脚本,所谓超全局,包括全局,都是指在当前脚本文件中。
 
echo '<hr>';
//可以在全局直接引用
echo '我的姓名是:'.$_GET['name'];

//也可以在函数中直接引用
function myName()
{
  //超全局变量不需要使用关键字 global 进行声明
  return '我的姓名是:'.$_GET['name'];
}

//调用函数
echo myName();
echo '<hr>';
var_dump($jkhkhklh);

运行实例 »

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


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议