代码之家  ›  专栏  ›  技术社区  ›  alex

在PHP中存储配置变量的最佳方法是什么?

  •  26
  • alex  · 技术社区  · 16 年前

    我需要在PHP中存储一堆配置信息。

    我考虑了以下几点。...

    // Doesn't seem right.
    $mysqlPass = 'password'; 
    
    // Seems slightly better.
    $config = array(
         'mysql_pass' => 'password'
    );
    
    // Seems dangerous having this data accessible by anything. but it can't be
    // changed via this method.
    define('MYSQL_PASSWORD', 'password'); 
    
    // Don't know if this is such a good idea.
    class Config
    {
        const static MYSQL_PASSWORD = 'password';
    }     
    

    到目前为止,我只想到了这些。我打算将此配置信息导入到我的应用程序中 require /config.inc.php .

    在存储配置数据方面,什么对您有效,以及在这方面的最佳实践是什么?

    4 回复  |  直到 13 年前
        1
  •  7
  •   William Holroyd    16 年前


    define('EXAMPLE1', "test1"); // scenario 1
    $example2 = "test2"; // scenario 2
    
    function DealWithUserInput($input)
    {
       return eval($input);
    }
    

        2
  •  4
  •   raspi    16 年前

    我想说这也有点取决于用户群。如果配置必须非常用户友好,或者用户必须能够通过网络等更改配置。

    Zend Config Ini 因为此设置和其他设置存储在SQL DB中。

        3
  •  1
  •   Jim OHalloran    16 年前

        4
  •  0
  •   Paulo    16 年前

    对于大多数配置值,我也支持选项2。如果你 如果要实现类,那么我会将特定值绑定到它所影响的类,而不是一个通用的配置类。

    在您的示例中,您的类将用于数据库连接,实例将保存密码、db_name等。这将正确封装数据,并在需要时提供创建多个连接的简单方法。

    推荐文章