0

我有大约 30 个变量硬编码到一个 php 脚本中,我需要将它们全部删除并将它们放到自己的位置。我想知道,应该将它们定义为常量、全局变量、将它们放入一个类中、将它们放入一个单独的文件中,或者其他什么东西。

另外,我很好奇如何定义一个常量数组。

那么,你认为正确的方法是什么?

4

5 回答 5

1

constant is not a bad idea as it does not get overridden

or you can consider parse_ini_file

于 2011-01-03T19:19:16.933 回答
0

它确实取决于这些变量代表什么,它们将在哪里使用,以及它们将如何使用。这些变量都相关吗?

至于定义一个常量数组......一种方法就是创建一个数组。这个数组实际上不会是“常量”,尽管值可以被覆盖。

$constArr = array(
    "companyAddress" => "123 Fake St" , 
    "companyCity" => "Queens" , 
    "companyState" => "NY" , 
    "companyActive" => true
);

然后你可以像这样访问你的“常量”......

echo $constArr["companyAddress"];
于 2011-01-03T19:03:16.620 回答
0

如果你想做的是“定义一个常量数组”,我会这样做。

$constantsToDefine = array(
  'PORT' => 80,
  'NUMBER_OF_LEGS' => 10
);
foreach ($constantsToDefine as $key => $value) {
  define(strtoupper($key), $value);
}
于 2011-01-03T19:04:44.313 回答
0

在我们编写的几个较大的应用程序中,我们将所有“常量”变量放入一个“包含”文件中,然后使用define函数定义它们。然后,我们只需将该文件包含在所有其他页面中。

例如,我们的包含文件看起来像:

define(CONSTANT_ONE, 1);
define(CONSTANT_TWO, TRUE);

然后,我们将require_once('includes.php');在其他脚本的顶部。

显然,将它们全部放在一个文件中的好处是集中控制。

于 2011-01-03T19:09:18.170 回答
0

这完全取决于它们是什么,它们代表什么以及它们的含义。你的问题太模糊了。

您不能定义常量数组或作为数组的常量。

于 2011-01-03T18:59:44.627 回答