博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php变量作用域
阅读量:2183 次
发布时间:2019-05-02

本文共 966 字,大约阅读时间需要 3 分钟。

1:在PHP中变量主要有:内置超级全局变量,一般的变量,常量,全局变量,静态变量等。

     内置超级全局变量:可以在脚本的任何地方使用和可见。即如果我们在一个PHP页面中改变了其中的一个值,那么在其他PHP页面中使用时,它的值也会发生改变。

     常量:一旦被声明将可以在全局可见,也就是说,它们可以函数内外使用,但是这仅仅限于一个页面之中(包含我们通过include和include_once)包含进来的PHP脚本,但是在其他的页面中就不能使用了。

     在一个脚本中声明的全局变量在整个脚本中是可见的,但不是在函数内部,在函数内部的变量如果与全局变量名称相同,以函数内部的变量为准。

    

Html代码  
  1. <?php   
  2.         $a = 4;  
  3.         function sendValue()  
  4.             {  
  5.                echo $a;  
  6.             }  
  7.         sendValue();  
  8. //当函数被调用时,$a不能以参数的形式被传递。所以上面代码不能够正常运行  
  9.     ?>  

 

     函数内部使用的变量声明为全局变量时,其名称要与全局变量的名称一致,在这样的情况下,我们就可以在函数中使用函数外部的全局变量了,这样就可以避免上一种因为函数内部的变量与外部的全局变量名称相同而覆盖了外部变量这样的情况。

     在函数内部创建并声明为静态的变量无法在函数外部可见,但是可以在函数的多次执行过程中保持该值,最常见的情况就是在函数的递归执行的过程之中。

     在函数内部创建的变量对函数来说是本地的,而当函数终止时,该变量也就不存在了。

超级全局变量的完整列表如下

$GOBALS 所有全局变量数组

$_SERVER 服务器环境变量数组

$_POST 通过POST方法传递给该脚本的变量数组

$_GET 通过GET方法传递给该脚本的变量数组

$_COOKIE cookie变量数组

$_FILES 与文件上传相关的变量数组

$ENV 环境变量数组

$_REQUEST 所有用户输入的变量数组包括$_GET $_POST $_COOKIE 所包含的输入内容

$_SESSION 会话变量数组

 

Html代码  
  1. <?php   
  2.         $a = 4;  
  3.         function sendValue($x)  
  4.             {  
  5.                echo $x;  
  6.             }  
  7.         sendValue($a);  
  8. //$a定义在函数外,函数定义了参数,当函数被调用时,$a将以参数的形式被传递。因此上面代码能够正常运行。   
  9.   
  10. ?>  

 

转载地址:http://hookb.baihongyu.com/

你可能感兴趣的文章
【手机自动化测试】monkey测试
查看>>
【英语】软件开发常用英语词汇
查看>>
Fiddler 抓包工具总结
查看>>
【雅思】雅思需要购买和准备的学习资料
查看>>
【雅思】雅思写作作业(1)
查看>>
【雅思】【大作文】【审题作业】关于同不同意的审题作业(重点)
查看>>
【Loadrunner】通过loadrunner录制时候有事件但是白页无法出来登录页怎么办?
查看>>
【English】【托业】【四六级】写译高频词汇
查看>>
【托业】【新东方全真模拟】01~02-----P5~6
查看>>
【托业】【新东方全真模拟】03~04-----P5~6
查看>>
【托业】【新东方托业全真模拟】TEST05~06-----P5~6
查看>>
【托业】【新东方托业全真模拟】TEST09~10-----P5~6
查看>>
【托业】【新东方托业全真模拟】TEST07~08-----P5~6
查看>>
solver及其配置
查看>>
JAVA多线程之volatile 与 synchronized 的比较
查看>>
Java集合框架知识梳理
查看>>
笔试题(一)—— java基础
查看>>
Redis学习笔记(三)—— 使用redis客户端连接windows和linux下的redis并解决无法连接redis的问题
查看>>
Intellij IDEA使用(一)—— 安装Intellij IDEA(ideaIU-2017.2.3)并完成Intellij IDEA的简单配置
查看>>
Intellij IDEA使用(二)—— 在Intellij IDEA中配置JDK(SDK)
查看>>