映射常量值组[重复]
Posted
技术标签:
【中文标题】映射常量值组[重复]【英文标题】:Mapping groups of constant values [duplicate] 【发布时间】:2012-06-28 16:10:36 【问题描述】:我有字符串与值对应的列表。例如,在公司列表中,我可以让 Microsoft 与字母 MS 相对应。
显然,这可以转换为 mysql 中的表以使列表可扩展,但出于好奇,您将如何在 php 中以常量形式表达它?
P.S:有一个带有常量的类方法(请参阅此处接受的答案:PHP and Enumerations)作为枚举,但是看到枚举映射到整数值真的有用吗?
【问题讨论】:
@Frosty 嘿,你毁了this report 的观点,哈哈! :) 我是一个字母标签杀手:) 【参考方案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;
我认为这会起作用。
【讨论】:
没想到定义。谢谢你的提及。以下是相关的:***.com/questions/5892226/… 看到您的编辑。以下可用于重现类似枚举的行为。 ***.com/questions/956401/…【参考方案2】:如果一家公司可以有许多对应的字母,我可能会先查看 multi dimentional 数组,但缺点是它们可能难以管理,您的另一个选择是定义 constants
【讨论】:
【参考方案3】:如果您有键值对,您可以将它们放入对象中,这样使用起来更实用。
查看此链接:the arrayToObject() function
【讨论】:
以上是关于映射常量值组[重复]的主要内容,如果未能解决你的问题,请参考以下文章