1

我的理解是,$GLOBALS 是一个超级全局变量,并且允许范围扩展到所有页面。我是 PHP 的菜鸟,我一直在尝试将值从一个页面传递到另一个页面,如下所示:

A.php - 读取

$GLOBALS['A'] = 'Passed A';
echo 'Main says:'.$GLOBALS['A'].'<br />';
disp();

function disp(){

echo 'Function says:'.$GLOBALS['A'].'<br />';
}

b.php 读取

<?php

echo 'B says:'.$GLOBALS['A'].'<br />';
$code = disp();

function disp(){

echo 'Function in B says:'.$GLOBALS['A'].'<br />';
}
?>

当调用 a.php 时,我得到 Main 说:Passed A Function 说:Passed A

当它链接到 b.php 时,我收到通知:未定义索引:第 3 行 B 中的(省略路径)\b.php 中的 A B 说:

注意:未定义索引:A in (省略路径) \b.php on line 8 Function in B 说

我说这应该有效吗?如果没有,有没有办法将变量从一页发送到下一页而不将它们包含在同一个文件中?非常感谢任何帮助。

4

1 回答 1

0

确实 $GLOBALS 可以保存该值,并且它在整个脚本的所有范围内都可用。这就是 b.php 出现故障的原因。因为必须将 $GOLBALS 传递给 b.php 才能从 $GLOBAL 中获取值,并且您必须使用变量来捕获它。

要将值从一个页面传递到另一个页面,您可以使用以下内容

  1. 会话(用于服务器端)
  2. $_POST
  3. cookie(用于客户端)
于 2013-07-01T17:47:31.810 回答