zoukankan      html  css  js  c++  java
  • PHP定义数组常量

    最先想到的方法是这样:

    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);

  • 相关阅读:
    ASC2 做题记录
    ASC1 做题记录
    Codeforces #676 (div 2) 做题记录
    Codeforces #639 (div 1) 做题记录
    Atcoder Beginner Contest 160 做题记录
    CodeCraft-20 (div 2) 做题记录
    Codeforces 1242C
    Codeforces 1102F
    codeforces 732F
    codeforces 405E
  • 原文地址:https://www.cnblogs.com/MY0101/p/6120942.html
Copyright © 2011-2022 走看看