【问题标题】:Mapping groups of constant values [duplicate]映射常量值组[重复]
【发布时间】:2012-06-28 16:10:36
【问题描述】:

我有字符串与值对应的列表。例如,在公司列表中,我可以让 Microsoft 与字母 MS 相对应。

显然,这可以转换为 MySQL 中的表以使列表可扩展,但出于好奇,您将如何在 PHP 中以常量形式表达它?

P.S:有一个带有常量的类方法(请参阅此处接受的答案:PHP and Enumerations)作为枚举,但是看到枚举映射到整数值真的有用吗?

【问题讨论】:

  • @Frosty 嘿,你毁了this report 的观点,哈哈! :)
  • 我是一个字母标签杀手:)

标签: php constants


【解决方案1】:

使用define怎么样

define("MS","Microsoft");
echo MS;

这会呼应微软。

http://php.net/manual/en/function.define.php

您提供的可能解决方案的链接也可以很容易地与字符串一起使用。它充当其他语言的枚举的唯一原因是因为您定义了从 0 到 n 的值,而不是使用字符串来代替。

class Companies {
    const MS  = 'Microsoft';
    const IBM = 'International Business Machines';
}

echo Companies::MS;

我认为这会起作用。

【讨论】:

【解决方案2】:

如果一家公司可以有许多对应的字母,我可能会先查看 multi dimentional 数组,但缺点是它们可能难以管理,您的另一个选择是定义 constants

【讨论】:

    【解决方案3】:

    如果您有键值对,您可以将它们放入对象中,这样使用起来更实用。

    查看此链接:the arrayToObject() function

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-03-02
      • 2017-11-08
      • 2012-03-11
      • 2012-10-16
      • 1970-01-01
      • 1970-01-01
      • 2019-07-12
      相关资源
      最近更新 更多