php 作用域
来源:互联网 发布:大数据中学生阅读答案 编辑:程序博客网 时间:2024/06/01 12:53
PHP 有三种不同的变量作用域:
- local(局部)
- global(全局)
- static(静态)
Local 和 Global 作用域
函数之外声明的变量拥有 Global 作用域,只能在函数以外进行访问。
函数内部声明的变量拥有 LOCAL 作用域,只能在函数内部进行访问。
例子:
1. 局部变量,全局变量 普通情况 都需要在相应的环境下才可以。
<?php
$num = 12;
function test(){
$num2 = 1;
$num = 12;
function test(){
$num2 = 1;
echo "num: $num !"."---"; // 报错
echo "num2: $num2 !"."--"; // 1
}
test();
echo "<br/>";
test();
echo "<br/>";
echo "num: $num !"; // 12
echo "num2: $num2 !"."--"; // 报错
?>
全局,局部的变量只有在相应的范围内才能输出。
即便是全局变量,局部范围 还是 找不到这个值。
2. 全局变量 -- 局部输出: global, $GLOBALS['']
<?php
$x = 5;
$y = 10;
function func(){
$x = 5;
$y = 10;
function func(){
global $x,$y,$z;
$z = $x+$y;
}
func();
echo $z; // 15
}
func();
echo $z; // 15
?>
--------------------------------------------------------------
<?php
$a = 23;
$b = 10;
function abc(){
$GLOBALS['c'] = $GLOBALS['a'] + $GLOBALS['b'];
}
abc();
echo $c; // 33
?>
$a = 23;
$b = 10;
function abc(){
$GLOBALS['c'] = $GLOBALS['a'] + $GLOBALS['b'];
}
abc();
echo $c; // 33
?>
3.static 保存局部变量. 一般局部变量使用完就会被删除,下次再重新定义赋值。
<?php
function jubu(){
static $a = 1;
$aa = 10;
echo $a++.' --- ';
echo $aa++.' / ';
}
jubu(); // 1 10
jubu(); // 2 10
jubu(); // 3 10
jubu(); // 4 10
jubu(); // 5 10
function jubu(){
static $a = 1;
$aa = 10;
echo $a++.' --- ';
echo $aa++.' / ';
}
jubu(); // 1 10
jubu(); // 2 10
jubu(); // 3 10
jubu(); // 4 10
jubu(); // 5 10
?>
0 0
- php变量作用域
- [转]PHP作用域
- php变量作用域
- php变量作用域
- php变量作用域
- php变量作用域
- php变量作用域
- php变量作用域
- PHP变量作用域
- php变量作用域
- PHP变量作用域
- PHP变量作用域
- php变量作用域
- php变量作用域
- PHP变量作用域
- PHP变量作用域
- PHP变量作用域
- PHP 变量作用域
- 1015. 德才论
- OpenCV在QT5.8+mingw32下的问题整理
- 性能测试分类--学习笔记
- SpringMvc学习篇
- AtomicInteger
- php 作用域
- python学习-06-基础总结
- 计算n!
- LeetCode7-Integer Reverse
- 多线程的统一管理----》线程池
- 凸n边形的三角形划分
- ThreadPoolExecutor介绍
- Executor介绍
- 虚拟机与物理机信息交流