dsyct08008 2018-12-10 23:51
浏览 177
已采纳

如何将另一个文件中的变量赋值给类常量?

I have a set of API keys that are constant across my codebase - I have a dev key and a live key. They are stored in their own 'keys.php' file.

I have a class that handles accessing the API and I am storing the keys in the class as class constants.

I want to be able to swap out the dev keys for live keys and access them in a static method of my class.

This works fine when I assign the class constant like this:

const API_USER_NAME = 'user_name';

But want to store the keys in their own file, and include them into the class file, and define those constants as such:

const API_USER_NAME = $user_name;

But apparently I can't assign a variable to a constant, even though that variable will not change value during execution of the program.

Is there another way I can use a variable to assign to a constant? Or at least, keep they keys in their centralized file, but still access them in the static methods of my class?

  • 写回答

3条回答 默认 最新

  • douqianni4080 2018-12-11 00:30
    关注

    You could simply define your keys themselves as constants:

    keys.php

    const KEY_USER_NAME = 'user_name';
    const KEY_USER_AGE = 'user_age';
    // ...
    

    Class

    require $path_to_somewhere . '/keys.php';
    
    class YourClass 
    {
      const API_USER_NAME = KEY_USER_NAME;
      const API_USER_AGE = KEY_USER_AGE;
    
      // ...
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 基于PLC的三轴机械手程序
  • ¥15 多址通信方式的抗噪声性能和系统容量对比
  • ¥15 winform的chart曲线生成时有凸起
  • ¥15 msix packaging tool打包问题
  • ¥15 finalshell节点的搭建代码和那个端口代码教程
  • ¥15 Centos / PETSc / PETGEM
  • ¥15 centos7.9 IPv6端口telnet和端口监控问题
  • ¥20 完全没有学习过GAN,看了CSDN的一篇文章,里面有代码但是完全不知道如何操作
  • ¥15 使用ue5插件narrative时如何切换关卡也保存叙事任务记录
  • ¥20 海浪数据 南海地区海况数据,波浪数据