有没有办法创建/定义一个可用于所有php文件的变量(如superglobals)
示例:
我在 file1.php
中定义了一个变量$car = ferrari
然后在 file2.php 中写
echo $car;
然后输出
ferrari
如何在file1.php中定义变量并在file2.php
中访问它修改
答案很好,但是有另一种选择吗?因为我将在多个目录中有多个php文件,我是否必须为每个目录创建自己的php文件?如果这是唯一的方法,那么我会做它
答案 0 :(得分:1)
嗨,最好的方法是,
您创建一个名为“defines.php”的.php文件,并确保在每个.php文件中包含该文件。
使你的变量,常量位于该文件中。这样你就可以访问它们了。
其他方法是,您可以将值设置为现有的Global变量。
等
$_SERVER['car'] = "ferrari"
感谢。
答案 1 :(得分:1)
如果你需要常量变量(所以,你不能编辑它) - 在项目的根目录中创建constants.php。
如果您需要可编辑的变量 - 在项目的根目录中创建globals.php。
<强> constants.php 强>
<?php
define('CAR', 'ferrari');
<强> globals.php 强>
<?php
class Globals
{
public static $car = 'ferrari';
}
将 constants.php 和 globals.php 添加到 init.php 。
<?php
require_once(dirname(__FILE__).DIRECTORY_SEPARATOR.'constants.php');
require_once(dirname(__FILE__).DIRECTORY_SEPARATOR.'globals.php');
将 init.php 包含在php源代码中。
<?php
require_once(dirname(__FILE__).DIRECTORY_SEPARATOR.'init.php');
如果您需要长期使用变量,而不仅仅是一个页面加载,那么请使用会话。 (用户登录,设置,......)
<?php
$_SESSION['car'] = 'ferrari';
在你的php源代码中,你可以使用常量和全局变量:
示例:
<?php
echo CAR; //ferrari
echo Globals::$car; //ferrari
Globals::$car = 'renault'; //set your global variable
echo Globals::$car; //renault
<强>参考文献:强>
http://php.net/manual/en/language.oop5.static.php
http://php.net/manual/en/function.define.php
答案 2 :(得分:0)
创建一个常量文件并将其包含在您要访问这些常量的文件中。
将文件包含为
include 'file_path';
答案 3 :(得分:0)
您可以使用SESSION
或include
概念。
1)使用SESSION
<强> file1.php 强>
session_start();
$_SESSION['car'] = 'ferrari';
<强> file2.php 强>
session_start();
echo $_SESSION['car']; //Result: ferrari
2)使用include
<强> file2.php 强>
include 'file1.php';
echo $car //Result: ferrari