什么';这是在PHP中读取配置文件的最佳方式

什么';这是在PHP中读取配置文件的最佳方式,php,php-7,Php,Php 7,我知道这很主观。我总是使用框架,所以当我必须从头开始工作时,我有点迷失了方向 我想创建一个从配置文件读取值的类。我更喜欢使用php数组作为配置文件,而不是.ini文件 最好的方法是什么?在方法中使用require_一次在我看来有点奇怪 我想做的是一个类,它读取一个配置文件并将这些值作为属性公开 感谢您的建议读取阵列中的任何ini文件: 要通过require(require\u一次)使用数组: 大多数php配置文件使用常量 define("SITE_NAME", "My Test Site");

我知道这很主观。我总是使用框架,所以当我必须从头开始工作时,我有点迷失了方向

我想创建一个从配置文件读取值的类。我更喜欢使用php数组作为配置文件,而不是.ini文件

最好的方法是什么?在方法中使用require_一次在我看来有点奇怪

我想做的是一个类,它读取一个配置文件并将这些值作为属性公开


感谢您的建议

读取阵列中的任何ini文件:

要通过require(require\u一次)使用数组


大多数php配置文件使用常量

define("SITE_NAME", "My Test Site");
读取值;
SITE_NAME

更新了答案,没有ini版本您知道这个问题是主观的,但您仍然会问这个问题,即使这明显偏离了主题?@Franzgleichman非常感谢您的建设性态度谢谢您的回复,抱歉我解释得不好,我想在OO模式下这样做,我更新了我的问题,但我想做的是创建一个从配置文件读取值的类,所以当我创建那个类的实例时,我把配置参数作为属性……@ USE3174311添加了一个例子,说明它是如何与OOPThanks一起使用的,我更新了一点,也考虑了JSON配置文件。
<?php 

// config.php

return ["db" =>"mysql", "folder" => "cache"];

// index.php

$config = require_once("config.php");
<?php

    // path/to/config/file.php
    return ['db' => 'mysql'];

    // Config.php
    class Config
    {
        public static function getInstance($configFile) {
            if (self::$instance == null) {
                // check that file exists.

                $ext = strtolower(substr($configFile, -3));
                if ($ext === "php") {
                    $data = require($configFile);
                } elseif ($ext) === "ini") {
                    $data = parse_ini_file("sample.ini");
                } else {
                    throw new \Exception('Can nod read config file');
                }

                self::$instance = new \ArrayObject($data, \ArrayObject::ARRAY_AS_PROPS);
                //or
                //self::$instance = (object) $data;
            }

            return self::$instance;
        }

        private static $instance;
    }

    // Usage
    $config = Config::getInstance('path/to/config/file.php');
    echo $config->db;
define("SITE_NAME", "My Test Site");