博客列表 >4.12变量的作用域: 全局,局部,静态,实例说明

4.12变量的作用域: 全局,局部,静态,实例说明

魏先生的博客
魏先生的博客原创
2018年04月15日 23:16:04753浏览

变量的作用域: 全局,局部,静态,实例说明代码如下:

<meta charset="UTF-8"/>
<?php
 /*
作用域只有三个
1.全局作用域:函数之外创建,仅在当前脚本除了函数之外的地方使用;
2.局部作用域:函数内部创建,仅能在函数中使用,外部不可访问;
3.静态作用域:函数内部创建,仅在函数中使用,函数执行完它的值不丢失;继续往上++;
*/
//全局的
$all = 88;
echo $all;//在函数外获取的,函数内无法获取.$all
echo "<hr>";
//局部的
function test(){
    $part = '明明';
    echo "{$all}是{$part}的年龄";//无法输出$all变量
}
echo @test();
echo '<hr style="color:red">';

//静态作用域
function MyStatic(){
    
    static $num = 1;
    return "第".$num."输出".$num++.'<br>';
}
echo '第1次完成输出'.MyStatic();
echo '第2次完成输出'.MyStatic();
echo '第2次完成输出'.MyStatic();
/*
超全局变量:$_SERVER,$_COOKIE,$_SESSION,$_GET,$_POST,$_REQUEST
1.属于预定义变量,全部是数组,拿来就用,不需要声明;
2.跨作用域,在全局和局部(函数内部中)都可以直接使用.
3.跨作用域不是跨脚本,所谓的超全局,包括全局,都是指在当前脚本文件中;
*/
echo '<hr style="color:red">';
$name = "好的";
function sayName()
{
  //超全局变量不需要使用关键字 global 进行声明
  return '我的姓名是:'.$_GET["name"];
}

//调用函数
echo sayName();//手动去浏览器调用GET超全局变量
echo '<br>';
echo $_GET['name'];

函数function funname(){code....},函数可以一次写好,反复调用.

return是非常有用的,让函数里的变量输出出去.

超全局变量以后用到表单的传输应该比较多.

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