2

我有一些共享公共变量的页面。起初,我只是复制$max = 196;到每个页面来更新它。这显然是一种不好的方法,因为它需要更多的工作并且很容易出错。我想改变它,这样我就可以在一个地方改变这个变量的值,并且在任何地方都使用这个值。

现在,我把include 'rises.php';每一页而不是实际的变量,和rises.php的内容是<?php $max=196; ?>

我也试过...

  • 保存196到 .txt 文件并使用 `fopen() 打开每个页面。
  • 创建一个仅包含此变量名称及其值的小型 MySQL 表。

所以我的问题是...

管理多个页面需要使用它的变量的最佳方法是什么?就我而言,它只有 5-6 页,但每个页面都会加载很多次。

4

3 回答 3

1

最好的方法是创建具有数组的特殊单例类(建议 $params),然后包含这个单例并在每个页面上使用参数。您必须实现类似http://code.google.com/p/data-registry/

于 2013-06-18T05:23:51.550 回答
0

您可以使用会话变量...

session_start();
$_SESSION['max'] = 96;
//to print your variable
echo $_SESSION['max'];
于 2013-06-18T05:21:55.633 回答
0

PHP 提供了会话,它是一种在页面之间持久化数据的方式。

以下是您如何使用它们:

  1. 每一页<?php session_start(); ?>最顶部添加。它应该是您的 php 文件的绝对第一行,甚至在任何空行之前。

  2. 在页面中如果您想设置一个变量,请执行此操作$_SESSION['name'] = "value";

  3. 在您要检索变量的页面中,情况相反:$foo = $_SESSION['name'];

PHP 将负责传递值。您不必包含任何特殊文件或担心数据库。

然而,会话不是永久性的。它不是放置设置和“常量”的地方。为此,您当前的解决方案很好。但是,对于临时数据,建议使用会话。


“你想在页面中设置一个变量”......就是这样......这些页面中的任何一个都可以首先加载。这些页面都是相互独立的。它在哪里加载原始变量?

用来auto_prepend_file解决这个问题。

于 2013-06-18T05:22:14.097 回答