PHP 包含文件中未定义的变量错误

2022-08-30 21:08:53

可能的重复:
PHP函数的未定义变量问题

有人可以告诉我为什么我的PHP包含文件中不断收到未定义的变量错误消息吗?

<?php

$page = 1;

if (isset($_REQUEST['page'])) {
  $page = $_REQUEST['page'];
}

function phpRocks() {
  require("includes/dostuff.php");
}

if ($search) {
  phpRocks();
}

?>

然后在 dostuff 中.php:

<?php echo $page; ?>

这是我得到的错误:


注意:未定义的变量:/dostuff中的页面.php第61

Attn down voters/close requesters:没有显示任何研究工作?怎么会这样?我还应该添加什么?我已经为此难住了半个小时,找不到任何其他回答这个问题的帖子。我需要成为PHP专家才能发布问题吗(因此我不会发布任何问题!)??


答案 1

马里奥知道了。请执行下列操作:

function phpRocks() {
    global $page;

    require("includes/dostuff.php");
}

答案 2

您正在将文件包含在函数中。因此,所有包含的代码的作用域都是函数的作用域。该变量在函数内部不存在。将其传入:$page

function phpRocks($page) {
    require "includes/dostuff.php";
}

phpRocks($page);

推荐