所以我有一个名为json的变量来存储所有的json。我想在网站上加载一次,并能够通过我拥有的任何PHP函数使用它。所以,假设我将这行代码放在index.php的开头:
$json = file_get_contents('http:/xxxxxxxx/bp.json');
我希望能够在页面中的其他位置使用此变量,而不会再次加载它。
谢谢!
答案 0 :(得分:2)
您可以将变量存储在PHP会话中,并在应用程序的任何位置调用它。
$_SESSION["favcolor"] = "green";
http://www.w3schools.com/php/php_sessions.asp
最佳做法是在退出应用程序时销毁和/或清除所有会话变量。
答案 1 :(得分:1)
1)使用全局变量
<?php
$myVar = 1;
function myFunction()
{
global $myVar;
$myVar = 2;
}
myFunction();
echo $myVar; //will be 2
include 'another.php'; //you can use $myVar in another.php too.
?>
2)使用Cookie
如果您希望从任何浏览器窗口访问您的变量,或者在加载其他页面后,您必须使用COOKIES
,因为HTTP
是无状态的。这些cookie可以通过javascript
访问,因为它们存储在客户端浏览器中,可以被客户端访问。
<?php
setcookie("myVar","myValue",time()+86400);
/*
86400 is time of cookie expires. (1 day = 86400)
*/
?>
<?php
/*
Getting cookie from anywhere
*/
$myVar = $_COOKIE["myVar"];
echo $myVar;
?>
3)使用会话
将变量存储在服务器端的最佳方法是使用HTTP_SESSION
<?php
/*
Start a session.
Call this line top of every page you want to use session variables
*/
session_start();
// set variable
$_SESSION["myVar"] = "value";
?>
<?php
session_start();
// Access session variables from another php.
$myVar = $_SESSION["myVar"];
?>
答案 2 :(得分:0)
一种简单的方法,您可以使用Superglobals
Superglobals - Superglobals是内置变量,在所有范围内始终可用
我认为你必须使用supergloabls变量,比如$ _SERVER,$ _ GET,$ _ POST等,而supergloabls变量也包括$ GLOBALS。
什么是$GLOBALS
注意:变量可用性 与所有其他超级全球不同,$ GLOBALS基本上始终以PHP形式提供。
所以你可以这样做