如何在 php 中制作全局变量



我正在尝试创建一个宠物网站,我想为它创建一个虚拟货币系统。 但是我找不到它成为全局变量的整体 php 代码。如何在 php 上制作全局代码?

你的问题对我来说有点模棱两可。如果您的意思是从一个文件设置变量,然后使其从所有 php 文件中可用,您可以将其放在一个文件中,然后将其包含在所有脚本中。把它放在上面。或者你可以把它放在一个 $_SESSION 变量中。这是我所知道的最简单的解决方案。:)

示例:假设所有文件都在根目录中

变量.php:

$globalVar = 2;
//or 
$_SESSION['global_var'] = 2; // if a session exists

其他文件.php:

include 'vars.php';
echo $globalVar; //outputs 2
//or
echo $_SESSION['global_var']; //outputs 2

我不确定这是否是您要实现的目标:D

要使变量从整个代码中可用,您有几种解决方案。我将在这里展示几个,由您选择最适合您需求的解决方案。

环境变量。

阿帕奇

环境变量是一种可以在操作系统上找到的全局变量。例如,变量$PATH是一个环境变量。
也就是说,您可以设置环境变量并在代码中使用它们。在这个SO答案中,您可以看到如何在Apache中设置环境变量以在PHP中使用它。

从答案:

<VirtualHost hostname:80>
...
SetEnv VARIABLE_NAME variable_value
...
</VirtualHost

然后这个 SO 答案展示了如何获取值。
通常您使用:

<?php
getenv('APP_ENV'); //Get the environment variable "APP_ENV"

请参阅SetEnv文档。

.env 文件

根据您的主机、服务器和一些因素,您可能很难使用 Apache 来设置环境变量。
与Ruby一样,PHP现在可以使用文件来设置环境变量。使用像phpdotenv这样的库,您可以在项目中定义一个带有变量的文件.env,然后将它们与getenv()一起使用。

.env

APP_ENV=dev
APP_SECRET=P3JGbB2neXL2vc4juepX3ZkFrNfszfEo

文件.php

(new Dotenv())->load(__DIR__.'/.env'); //Load the .env
getenv('APP_ENV');

变量定义文件

您可以使用文件来定义全局变量。

配置.php

<?php
$appEnv = 'dev';

文件.php

require('config.php');
echo $appEnv;

相关内容

  • 没有找到相关文章

最新更新