PHP常量为数组

时间:2017-05-01 09:58:32

标签: php arrays

是否有可能制作一组常量并使它们与数组完全相同而不是单独编写每个常量?

类似

echo MYCONST[0]; or 
echo MYCONST['name'];

2 个答案:

答案 0 :(得分:9)

您要找的是Constant array:

现在可以使用 define()执行此操作,但仅适用于PHP7 。但是,您可以使用 const 关键字在PHP5.6上执行此操作,并且无法在较低的PHP版本中执行此操作

这是一个例子:

<?php

define('ANIMALS', [
    'dog',
    'cat',
    'bird'
]);

echo ANIMALS[1]; // outputs "cat"

define('MYCONST', [
    'key' => "value"

    ]);

echo MYCONST['key']; // outputs "value"

答案 1 :(得分:9)

1。如果您使用 PHP7 ,则可以定义constant as an array

define('MYCONST', array("someValue1","someValue2"));

2。版本低于PHP7 ,您可以将字符串存储为常量,无论它是JSON字符串还是serialized字符串。

define('MYCONST', json_encode(array("someValue1","someValue2")));
define('MYCONST', serialize(array("someValue1","someValue2")));

要访问PHP7以下版本中的常量(如果是JSONserialized字符串),则必须分别json_decodeunserialize