2017-02-20 24 views
-2

我知道const可以接受一个数组,但我想有一个包含嵌套数组的常量。这可能吗?我可以在常量PHP中使用嵌套数组

const DAYS_OFF = array(
    'holidays' => array(
    'newYear' => '1 January' 
) 
) 

谢谢

+2

你试过它? –

+0

您面临的问题是什么? –

+0

如果答案解决了您的问题,请考虑接受答案。以下是http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work然后返回到此处,并使用勾号/复选标记执行相同操作,直至变为绿色。这告知社区,找到了解决方案。否则,其他人可能会认为这个问题仍然存在,并且可能需要发布(更多)答案。您将获得积分,其他人将被鼓励帮助您。 *欢迎使用Stack!* –

回答

1

是的,你可以在常量使用嵌套的数组。数组是一个数组,无论深度:

const DAYS_OFF = array(
    'holidays' => array(
    'newYear' => '1 January' 
) 
); 

print_r(DAYS_OFF); 

回报:

Array 
(
    [holidays] => Array 
     (
      [newYear] => 1 January 
     ) 

) 

echo DAYS_OFF['holidays']['newYear']; 

回报

1 January

+0

在PHP 5.6中无效“解析错误:语法错误,意外的'const'(T_CONST)位于” –

+0

“此代码已在PHP 5.6中测试过,可用于多个平台。使用这个沙箱:http://sandbox.onlinephpfunctions.com/ –

0

只能在PHP 7

<?php 
    define('DAYS_OFF', array(
        'holidays' => array(
         'newYear' => '1 January' 
        ) 
       )); 
    print_r(constant("DAYS_OFF")); 
?> 
+0

@JayBlanchard定义与数组(标量)值只能在PHP 7中工作。 –

+0

虽然标量定义只能在PHP7中工作,你不需要'constant() '功能。你可以'print_r(DAYS_OFF);' –