未定义的变量 - 但它就在那里

时间:2012-05-30 00:33:39

标签: php variables undefined

  

可能重复:
  Using global vars within a function in PHP the way you do it in Javascript

出于某种原因,以下程序给我一个错误:

<?php
    $a = 1;

    function func() {
        echo $a;
    }

    func();
?>

这是整个计划。错误是:

Notice: Undefined variable: a in what.php on line 5

我是否误解了一些基本的东西?

2 个答案:

答案 0 :(得分:4)

由于variable scope $a在函数内部不可用。您需要将其作为func()的参数传递给它才能访问它:

<?php
    $a = 1;

    function func($a) {
        echo $a;
    }

    func($a);
?>

答案 1 :(得分:2)

如果您想引用全局变量,则需要使用global关键字:

<?php
    $a = 1;

    function func() {
        global $a;

        echo $a;
    }

    func();
?>