如何为PHP中的所有页面设置全局变量

如何为PHP中的所有页面设置全局变量,php,Php,问题 我想使$associate\u name和$app\u key成为全局变量,这样我就可以在我想要的任何页面上访问它们。下面是我头文件中的代码,get变量将进入索引页面。它在索引页上工作正常,因为$\u GET数据可用,但当用户移动到下一页,但包含相同的头文件时,它会抛出一个错误,称为未定义索引。请让我知道如何在所有页面上使用此变量。谢谢 代码 $associate_name = $_REQUEST['an']; $app_key = $_REQUEST['key']; define('as

问题

我想使
$associate\u name
$app\u key
成为全局变量,这样我就可以在我想要的任何页面上访问它们。下面是我头文件中的代码,get变量将进入索引页面。它在索引页上工作正常,因为$\u GET数据可用,但当用户移动到下一页,但包含相同的头文件时,它会抛出一个错误,称为未定义索引。请让我知道如何在所有页面上使用此变量。谢谢

代码

$associate_name = $_REQUEST['an'];
$app_key = $_REQUEST['key'];
define('associate_name',$associate_name);
define('app_key',$app_key);

//echo "Sorry but there seems to be a problem in your code. We can't find one of the following: App name or App key";           

$select_associate = "SELECT * FROM associate_account WHERE associate_name='".associate_name."' and app_key='".app_key."'";
$assoc_result = mysql_query($select_associate) or die($select_associate.mysql_error());

if(mysql_num_rows($assoc_result)<=0){
    echo "Oops there seems to be a problem in your iFrame code. Please login into your Associate panel and copy/paste the link again.";
}else{
    $row_assoc = mysql_fetch_assoc($assoc_result);
    $associate_name=ucwords($row_assoc['associate_name']);
    $app_logo=$row_assoc['app_logo'];
    $app_intro_content=$row_assoc['app_intro_content'];
    $bg_color=$row_assoc['bg_color'];
}
$associate\u name=$\u请求['an'];
$app_key=$_请求['key'];
定义('associate_name',$associate_name);
定义('app_key',$app_key);
//echo“很抱歉,您的代码中似乎有问题。我们找不到以下内容之一:应用程序名称或应用程序密钥”;
$select_associate=“从associate_账户中选择*,其中associate_name=”.associate_name.”和app_key=”.app_key。“”;
$assoc\u result=mysql\u query($select\u associate)或die($select\u associate.mysql\u error());
如果(mysql_num_rows($assoc_result)
  • 将所有
    变量/常量
    放在一个单独的文件中可能是
    常量.php
    无论您想在哪里访问该变量,都要包括
    constants.php
  • 使用

将您想要的变量作为会话或cookie数据。否则,您将不得不求助于
global
关键字,这在现代PHP应用程序中是一种非常糟糕的做法

这将是这样的(会议):

$\u会话[“myvar”]=;

Cookie有点复杂,但这应该可以让您继续;)

是您的选择,以防值被修改。否则(该值在您的配置中是恒定的,而不是用户的修改,请使用使用
$\u SESSION
或在页面中调用一个变量并将其包含在所有页面中为您的常量创建一个脚本,例如
config.php
,并将其包含在每个php脚本的顶部,例如
include config.php
,或者您可以d使用require,另一种方法是将常量设置为会话变量。当然,您应该使用
session\u start()
初始化会话数据处理程序,并且
session\u regenate\u id()
run也不会有任何影响(为了避免会话劫持等)。
$_SESSION["myvar"] = <value>;