PHP 变量作用域

● local

● global

● static

● parameter

局部作用域、全局作用域

<?php$x = 50; // 全局变量function myTest(){    $y = 100; // 局部变量}

PHP global 关键字

global 关键字用于函数内访问全局变量。

在函数内调用函数外定义的全局变量,可以在函数中的变量前加上 global 关键字。

<?php$x = 50;$y = 100;function myTest(){    global $x, $y;    $y = $x + $y;}myTest();echo $y;  // 输出 150

PHP 将所有全局变量存储在一个名为 $GLOBALS 的数组中。

所以上述代码可以换一种写法:

<?php$x = 50;$y = 100;function myTest(){    $GLOBALS['y'] = $GLOBALS['x'] + $GLOBALS['y'];} myTest();echo $y;

PHP Static 作用域

PHP 当一个函数完成时,它的所有变量通常都会被删除。为了有些局部变量不被删除,可以在第一次声明变量的时候使用 static 关键字。

<?phpfunction myTest(){    static $x = 0;    echo $x;    $x++;    echo PHP_EOL;}myTest();myTest();myTest();

参数作用域 (形参)

参数声明作为函数声明的一部分。

<?phpfunction myTest($x){    echo $x;}myTest('Galois');myTest(8888);

小补充:

打印数组方式:

echo '<pre>';print_r($arr);

相关推荐:php教程

更多相关文章

  1. 四种好用的PHP自定义加密函数(可逆/不可逆)
  2. 关于php中变量的初始化以及赋值方式的介绍
  3. 通过header函数设置响应头解决php跨域问题
  4. 关于php中匿名函数与回调函数的详解
  5. php匿名函数的使用
  6. 今日报错系列:void * 类型的函数形参,该如何使用
  7. 函数
  8. JDBC第二篇【PreparedStatment、批处理、处理二进制、自动主键、
  9. golang 发送post请求 其body中json对象使用变量作为value

随机推荐

  1. php连接mysql出错 Table 'test.user' doe
  2. mysql关闭与删除bin-log日志详解
  3. 如何在postgres中更新时间戳字段的一部分
  4. SQL Server 2008 数据库镜像部署实例之三
  5. SQL Server表中某些字段含有水平制表符、
  6. Mysql中使用树的设计
  7. 数据库事务——还是这是一个规范化问题?
  8. fmdb 数据库升级1-----增加表字段
  9. CentOS 7下升级MySQL5.7.23的一个坑
  10. mysql根据查询结果创建表