函数内部的全局变量

时间:2015-10-13 10:56:25

标签: php

以下代码打印产生错误:

Notice: Undefined variable: x in C:\wamp\www\h4.php on line 9

并输出:

Variable x inside function is:
Variable x outside function is: 5

代码:

<html>
<body>

<?php
$x = 5; // global scope

function myTest() {
    // using x inside this function will generate an error
    echo "<p>Variable x inside function is: $x</p>";
} 
myTest();

echo "<p>Variable x outside function is: $x</p>";
?>

</body>
</html>

x函数内的myTest全局变量出了什么问题?

2 个答案:

答案 0 :(得分:2)

更改为:

function myTest() {
    global $x;
    // using x inside this function will generate an error
    echo "<p>Variable x inside function is: $x</p>";
} 

global命令表示使用$ x的全局值而不是私有值。

答案 1 :(得分:2)

要访问全局变量,您需要在函数中使用'global'关键字定义。定义它后,您可以访问该全局变量。

      $x = 5; // global scope

        function myTest() {
//use global keyword to access global variable
            global $x;
            // using x inside this function will generate an error
            echo "<p>Variable x inside function is: $x</p>";
        } 
        myTest();

    echo "<p>Variable x outside function is: $x</p>";