php include_once引入的文件中的变量不能使用

假设一个叫test1.php文件中的内容

<?php
$a=5;
?>

另一个叫test2.php文件的内容

<?php
require_once 'test1.php';
function test(){
    echo $a;
}
test();
?>

然后访问test2.php 程序报错 说没有找到该变量。
请问各位大神为什么,应该如何解决

阅读 10k
2 个回答

在PHP中,全局变量是不能在函数内直接调用的。在这个代码里,如果你想在test函数里面调用$a,应该先用global声明。

function test(){
    global $a;
    echo $a;
}

一个函数内部的局部变量,一个是全局变量,当然会有问题!建议先好好学习一下局部变量和全局变量的定义。

推荐问题