首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有没有办法在PHP中定义常量数组?

问有没有办法在PHP中定义常量数组?
EN

Stack Overflow用户
提问于 2010-02-11 09:12:15
回答 4查看 2.9K关注 0票数 7

有没有办法在PHP中定义常量数组?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-02-11 09:16:14

不,这不可能。摘自手册:

常量中只能包含标量数据(布尔型、整型、浮点型和字符串)。可以将常量定义为资源,但应避免这样做,因为它可能会导致意外的结果。

如果需要设置一组已定义的常量,可以考虑创建一个类并用填充它。手册中的一个稍作修改的示例:

代码语言:javascript
复制
class MyClass
{
const constant1 = 'constant value';
const constant2 = 'constant value';
const constant3 = 'constant value';

  function showConstant1() {
    echo  self::constant1 . "\n";
  }
}

echo MyClass::constant3;

也可以查看GhostDog发布的链接,这是一个很好的变通方法。

票数 6
EN

Stack Overflow用户

发布于 2010-02-11 09:51:53

代码语言:javascript
复制
define('SOMEARRAY', serialize(array(1,2,3)));

$is_in_array = in_array($x, unserialize(SOMEARRAY));

这是最接近数组常量的。

票数 8
EN

Stack Overflow用户

发布于 2010-02-11 10:20:01

你不能,但你可以只在一个类中定义静态数组,它同样可以为你服务,只是代替FOO,你可以写Foo::$bar。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2241569

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档