2016-10-02 70 views
-1

我对编程并不陌生,但我对PHP很陌生。我只是无法弄清楚为什么这个变量没有被识别。我有一个目录utils称为utils.php中像这样的文件:无法从单独的PHP脚本访问包含的变量

<?php 
    $the_var = 'A' 

    function foo($bar) { 
     echo $bar; 
    } 
?> 

...在utils的的父目录中称为work.php这样的其他文件:

<?php 
    include('utils/utils.php'); 
    function doIt() { 
     echo $the_var; // is always empty 
     foo('bar'); // no problem 
    } 
?> 

为什么能” t访问变量$the_var

+0

因为'函数scope'的。 –

回答

-1

变量内部函数不是全局变量。如果您可以访问到变量$ the_var使用

function doIt($the_var) { 
    echo $the_var; 
    foo('bar'); // no problem 
} 

function doIt() { 
    echo $GLOBALS['the_var']; 
    foo('bar'); // no problem 
} 
+0

请不要回答已经回答的问题。 –