js和php作用域区别
-
js中作用域:
- 全局作用域:任何地方(函数外和函数内)都可以被使用
- 局部作用域:只能在函数内部被使用 PHP也有两个作用域:全局作用域和局部作用域
- 全局作用域:只能在函数外部使用
- 局部作用域:只能在函数内部使用
比如:
var a = 'zy'
function test () {
console.log(a)
}
test()
// a 变量可以被访问到
内部不能访问外部
<?php
$a = 'zy'
function test () {
var_dump($a)
}
test()
?>
// 报错:( ! ) Parse error: syntax error, unexpected 'function' (T_FUNCTION) in
外部不能访问内部
<?php
function test () {
$a = 'zy'
}
var_dump($a)
?>
// 报错:( ! ) Parse error: syntax error, unexpected '}' in
使用global关键词
<?php
function test ()
{
global $a;
}
$a = 'zy';
var_dump($a);
test();
// 好使
使用$GLOBALS
<?php
function test ()
{
$GLOBALS['a'] = 'zy';
}
test();
var_dump($GLOBALS['a']);