<?php
$test = "test";
function show1($abc){//直接把参数传入函数,函数能用
echo $abc.'<br>';
} function show2(){//不给函数传参数,所以使用不了外部变量,报错
echo $test.'<br>';
} function show3(){//可以通过$GLOBALS来调用外部变量
echo $GLOBALS['test'].'<br>';
}
echo "it is show1 function<br>";
show1($test);
echo "it is show2 function<br>";
show2();
echo "it is show3 function<br>";
show3(); ?>

运行结果如下:

PS:补充一下$GLOBALS的知识:

$GLOBALS :引用全局作用域中可用的全部变量

一个包含了全部变量的全局组合数组。变量的名字就是数组的键。

范例:

<?php
function test() {
$foo = "local variable"; echo '$foo in global scope: ' . $GLOBALS["foo"] . "\n";
echo '$foo in current scope: ' . $foo . "\n";
} $foo = "Example content";
test();
?>

以上例程的输出类似于:

$foo in global scope: Example content
$foo in current scope: local variable
 

php的$GLOBALS例子的更多相关文章

  1. php中的作用域

    在php中分为局部变量.全局变量和静态变量: 局部变量就是在函数体内声明的变量,例子: <?php  //作用域  $a=5;  function show($b){   $a=$b;//相当于 ...

  2. 全局变量:global与$GLOBALS的区别和使用

    今天在写框架的时候想把SaeMySQL初始化之后作为全局变量使用.但是后来发现PHP中的全局变量和Java或者OC中的全局变量还是有较大区别的.下面记录一下php里面的global的使用相关注意事项. ...

  3. PHP中global与$GLOBALS['']的区别

    +++ 探讨(一)+++++++++++++++++++++++++++++++++++++++ 很多人都认为global和$GLOBALS[]只是写法上面的差别,其实不然. 根据官方的解释是 $GL ...

  4. Win32 OpenGL标准例子

    在VS2008的MSDN中有一个标准的OpenGL例子,记录如下: /* * Example of a Win32 OpenGL program. * The OpenGL code is the s ...

  5. Python – locals和globals

    转载: Python两个内置函数--locals 和globals (学习笔记) Python两个内置函数locals 和globals, 这两个函数主要提供,基于字典的访问局部和全局变量的方式.在理 ...

  6. Inside Flask - globals 全局变量(对象代理)

    Inside Flask - globals 全局变量(对象代理) 框架是一个容器,在框架内编程,一般是要遵守框架的约定和使用模式.通常这样的模式是 IoC,即由框架调用用户的代码,而不是用户调用框架 ...

  7. php中global与$GLOBALS的用法及区别-转载

    php中global 与 $GLOBALS[""] 差别 原本觉得global和$GLOBALS除了写法不一样觉得,其他都一样,可是在实际利用中发现2者的差别还是很大的! 先看下面 ...

  8. php中global与$GLOBALS的用法及区别

    php中global 与 $GLOBALS[""] 差别 原本觉得global和$GLOBALS除了写法不一样觉得,其他都一样,可是在实际利用中发现2者的差别还是很大的! 先看下面 ...

  9. PHP中超全局变量$GLOBALS和global的区别

    一.超全局变量$GLOBALS PHP超全局变量有很多,如下的都属于超全局变量(Superglobal): $GLOBALS,$_SERVER,$_GET,$_POST,$_FILES,$_COOKI ...

随机推荐

  1. MFC中和定时器使用

    在MFC中和定时器相关的有三个函数: 1.设置定时器(定义一个定时器的属性):         SetTimer( UINT nIDEvent, UINT nElapse, void (CALLBAC ...

  2. Scala包和引用

    1.包 Scala包的命名方式有两种.一种和Java一样,通过把package子句放在文件顶端的方式,把整个文件的内容放进包里.如: package scala.actors.Actor 另一种方式可 ...

  3. plsql高版本无法设置Fixedsys字体解决办法(win7&winXP适用)

    http://hi.baidu.com/crsky2008/item/c174c9fb52577919e3e3bd6b 设置如下:Tools->Preferences->Oracle-&g ...

  4. FP-Growth in Spark MLLib

    并行FP-Growth算法思路 上图的单线程形成的FP-Tree. 分布式算法事实上是对FP-Tree进行分割,分而治之 首先,假设我们只关心...|c这个conditional transactio ...

  5. DBCC--LOG

    DBCC LOGTo retrieve the transaction log for a given database.对应日志文件较大的数据库,慎用该命令Uasge:DBCC LOG(<db ...

  6. [C#学习笔记]类型对象指针和同步块索引

    写在前面 看<CLR via C#>第四章时,看到了类型对象指针和同步块索引这两个概念,不知如何解释,查看过相关资料之后,在此记录. 类型对象指针 <CLR via C#>中的 ...

  7. 初探Angular_03 组件中模板数据绑定

    这里将介绍三种情况的数据绑定 需要TypeScript的基本知识,如TS数据类型 一.模板属性绑定数据 1.模板属性其实HTML的属性,如class,style,title等 2.先在header.c ...

  8. Spring Boot - Spring Data

    使用JPA 虽然JPA是一个标准,但spring中一般就是使用hibernate实现的 使用JPA(Java Persistence API,Java持久化API,是个规范,其实是借助Hibernat ...

  9. UWP开发入门(六)——对多设备不同分辨率显示效果的讨论

    本篇不涉及具体代码,而是把实际开发UWP APP的过程中,遇到的不同设备,不同分辨率显示效果差异的问题进行讨论.希望能够抛砖引玉,和各位擦出一些火花. 蜀黍我目前是在做一套牛逼的UWP APP啦,目标 ...

  10. Android Studio - 如何停止logcat不断滚动信息?

    今天升级了一下Android Studio,升级之后准备调试程序,发现logcat里面不断滚动各种信息,我想调试程序非常困难了!滚动信息截图: 如何阻止自动出现的各种滚动信息,只显示我正在开发工程的调 ...