最先想到的方法是這樣:
define('SIGN_CODE', array('9df512','59gf1g','5eg7h1','g1agf5','f5e151','g51gfr','a5481s'));
運行報錯:Warning: Constants may only evaluate to scalar values in
原因是:define常量的值;僅允許標量和 null。標量的類型是 integer, float,string 或者 boolean。所以數組是不允許的
通常做法是采用下面的方法去間接地去定義“數組常量”
方法一:采用eval()函數
<?php
define('SIGN_CODE', "return array('9df512','59gf1g','5eg7h1','g1agf5','f5e151','g51gfr','a5481s');");
$SIGN_CODE=eval(SIGN_CODE);
var_dump($SIGN_CODE);
方法二:采用json_encode()函數
<?php
define('SIGN_CODE', "return array('9df512','59gf1g','5eg7h1','g1agf5','f5e151','g51gfr','a5481s');");
$SIGN_CODE=json_decode(SIGN_CODE,true);
var_dump($SIGN_CODE);
方法三:采用serialize()函數
<?php
define('SIGN_CODE', "return array('9df512','59gf1g','5eg7h1','g1agf5','f5e151','g51gfr','a5481s');");
$SIGN_CODE=unserialize(SIGN_CODE);
var_dump($SIGN_CODE);