php 全局变量范围分析

yipeiwu_com5年前PHP代码库
复制代码 代码如下:

<?php
$a = 1 ;
include 'b.inc' ;
?>

这里变量 $a 将会在包含文件 b.inc 中生效。但是,在用户自定义函数中,一个局部函数范围将被引入。任何用于函数内部的变量按缺省情况将被限制在局部函数范围内。
复制代码 代码如下:

<?php
$a = 1 ; /* global scope */
function Test ()
{
echo $a ; /* reference to local scope variable */
}
Test ();
?>

这个脚本不会有任何输出,因为 echo 语句引用了一个局部版本的变量 $a ,而且在这个范围内,它并没有被赋值。你可能注意到 PHP 的全局变量和 C 语言有一点点不同
PHP 中全局变量在函数中使用时必须申明为全局(global关键字)
复制代码 代码如下:

<?php
$a = 1 ;
$b = 2 ;
function Sum ()
{
global $a , $b ;
$b = $a + $b ;
}
Sum ();
echo $b ;
?>

以上脚本的输出将是“3”。

相关文章

PHP生成验证码时“图像因其本身有错无法显示”的解决方法

今天使用代码进行PHP生成校验码功能的实现,发现firefox一直提示“图像.......因其本身有错无法显示”的问题,作者也提示了说“如果浏览器显示“图像XXX因其本身有错无法显示”,...

PHP正则验证Email的方法

本文实例讲述了PHP正则验证Email的方法。分享给大家供大家参考。具体如下: <?php function validateEmail($email) { $isV...

kindeditor 加入七牛云上传的实例讲解

七牛云上传主要有两种: 服务端上传 前端上传,前端又分两种返回方式: 1).重定向返回,可以解决ajax跨域的问题 2).回调返回,七牛云先向服务端要返回数据,再由七牛云返回前端,解决不...

详解PHP错误日志的获取方法

在PHP中错误日志的获取方法有很多种,下面我给大家简单介绍下遇到此类问题如何解决,下面通过代码给大家展示下,希望能够帮助到大家。 <?php error_reporti...

jq的get传参数在utf-8中乱码问题的解决php版

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//E...