2013-11-27 159 views
0

我不明白从php.net这句话: 注: 在函数外部使用全局关键字不是错误。如果文件包含在函数中,则可以使用它。全局变量范围在php

这是什么意思?任何人都可以简要演示吗

+0

例如:'

+0

是,但我不明白,说可以,如果使用的一部分吗?文件是包含在一个函数 – user3021621

回答

0

全局变量:

相较于局部变量,全局变量可以在程序的任何部分进行访问。但是,为了进行修改,全局变量必须在要修改的函数中显式声明为全局变量。通过将关键字GLOBAL放置在应该被识别为全局变量的前面,这足够方便地实现了。将这个关键字放在已经存在的变量的前面告诉PHP使用具有该名称的变量。

$somevar = 15; 

function addit(){ 
    GLOBAL $somevar; 
    $somevar++; 
    print "Somevar is $somevar"; 
} 

addit(); 

输出

是16

+0

谢谢,但这不是我不明白。我想查看一个使用函数范围外的全局的案例。如果文件是从函数内部包含的,则它可以用于什么意思 – user3021621

+0

**全局**关键字也可以在函数之外使用。在函数中使用** global **关键字来覆盖本地作用域。现在从一个函数内部意味着如果一个**全局**变量在其他文件中被定义,并且你从一个函数中包含该文件,那么你也可以使用它。 – user2486495

+0

请你给我一个简短的例子,因为我试图做到没有任何成功 – user3021621

0

“可以,如果该文件是从一个函数内部包括用于” Somevar意味着它将甚至像工作此:

page.php

<?php 
    global $d; 
    $d = "HI"; 
?> 

的index.php

<?php 
    getpage(); 

    function getpage(){ 
    include 'page.php'; 
    echo $d; 
    } 
?>