php基础之小菜鸟起飞(一)
2018-01-29 23:20
246 查看
PHP 变量作用域
在 PHP 中,可以在脚本的任意位置对变量进行声明。
变量的作用域指的是变量能够被引用/使用的那部分脚本。
PHP 有三种不同的变量作用域:
local(局部)
global(全局)
static(静态)
Local 和 Global 作用域
函数之外声明的变量拥有 Global 作用域,只能在函数以外进行访问。
函数内部声明的变量拥有 LOCAL 作用域,只能在函数内部进行访问。
下面的例子测试了带有局部和全局作用域的变量:
注释:可以在不同的函数中创建名称相同的局部变量,因为局部变量只能被在其中创建它的函数识别。
PHP global 关键词
global 关键词用于访问函数内的全局变量。
要做到这一点,请在(函数内部)变量前面使用 global 关键词:
PHP 同时在名为 $GLOBALS[index] 的数组中存储了所有的全局变量。下标存有变量名。这个数组在函数内也可以访问,并能够用于直接更新全局变量。
上面的例子可以这样重写:
PHP static 关键词
通常,当函数完成/执行后,会删除所有变量。不过,有时我需要不删除某个局部变量。实现这一点需要更进一步的工作。
要完成这一点,请在首次声明变量时使用 static 关键词:
然后,每当函数被调用时,这个变量所存储的信息都是函数最后一次被调用时所包含的信息。
注释:该变量仍然是函数的局部变量
在 PHP 中,可以在脚本的任意位置对变量进行声明。
变量的作用域指的是变量能够被引用/使用的那部分脚本。
PHP 有三种不同的变量作用域:
local(局部)
global(全局)
static(静态)
Local 和 Global 作用域
函数之外声明的变量拥有 Global 作用域,只能在函数以外进行访问。
函数内部声明的变量拥有 LOCAL 作用域,只能在函数内部进行访问。
下面的例子测试了带有局部和全局作用域的变量:
<?php $x=5; //全局作用域 function myTest(){ $y=10; //局部作用域 echo "<p>测量函数内部的变量</p>"; echo "变量 x 是:$x"; echo "<br>"; echo "变量 y 是:$y"; } myTest(); echo "<p>测量函数内部的变量</p>"; echo "变量 x 是:$x"; echo "<br>"; echo "变量 y 是:$y"; ?>
注释:可以在不同的函数中创建名称相同的局部变量,因为局部变量只能被在其中创建它的函数识别。
PHP global 关键词
global 关键词用于访问函数内的全局变量。
要做到这一点,请在(函数内部)变量前面使用 global 关键词:
<?php $x=5; $y=10; function myTest(){ global $x,$y; $y=$x+$y; } myTest();// 运行函数 echo $y; //输出变量 $y 的新值:15 ?>
PHP 同时在名为 $GLOBALS[index] 的数组中存储了所有的全局变量。下标存有变量名。这个数组在函数内也可以访问,并能够用于直接更新全局变量。
上面的例子可以这样重写:
<?php $x=5; $y=10; function myTest(){ $GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y']; } myTest(); echo $y; ?>
PHP static 关键词
通常,当函数完成/执行后,会删除所有变量。不过,有时我需要不删除某个局部变量。实现这一点需要更进一步的工作。
要完成这一点,请在首次声明变量时使用 static 关键词:
<?php function myTest(){ static $x=0; echo $x; $x++; } myTest(); echo "<br>"; myTest(); echo "<br>"; myTest(); ?>
然后,每当函数被调用时,这个变量所存储的信息都是函数最后一次被调用时所包含的信息。
注释:该变量仍然是函数的局部变量
相关文章推荐
- 菜鸟必看php基础之类对
- PHP学习入门的一些基础知识(菜鸟必看)
- 菜鸟学习:动态网页PHP基础学习笔记
- 菜鸟零基础学PHP之环境搭建一(phpmanager)
- 菜鸟零基础学PHP之环境搭建二(mysql安装)
- Unity菜鸟起飞01 -- 基础知识
- 菜鸟学Linux 第055篇笔记 php基础
- PHP菜鸟基础知识0.1
- php的那些基础算法
- php基础系列:PHP连接MySQL数据库用到的三种API
- PHP小白必须要知道的php基础知识(超实用)
- 实现PHP服务器+Android客户端(Retrofit+RxJava)第一天基础搭建
- 从菜鸟到高手,我的php学习之路。
- php四种基础算法:冒泡,选择,插入和快速排序法
- PHP基础笔记【2】字符串操作
- PHP基础语法
- PHP基础总结
- 小白高速变大神,零基础菜鸟应该怎么学编程
- 菜鸟装apache,PHP及扩展
- 【夯实PHP基础】微信小程序开发 2017.02.06