簡體   English   中英

在項目中僅包含一次php文件

[英]include php file only once in project

我有一個文件(config.php),其中包含我的應用程序配置數據:

<?php

return [
    // here is my associative configuration array
    // having also Closures in it
];

我要做的就是將此文件發送到Config類,該類將處理我的數據,它將作為我的配置信息接口。

Config::init(require('config.php'));

這樣,除了使用公共Config類方法之外,我不想以任何其他方式訪問配置信息。

因此,我只需要在項目中包含config.php一次(發送到Config類時)。

一種解決方案是在文件頂部定義一個常量:

<?php

define('config', true);

return [
    // here is my associative configuration array
    // having also Closures in it
];

這樣,兩次包含config.php都會產生錯誤,因為'config'常量被兩次定義,這在php中是非法的。

但是,“ config”常量可以很容易地在第二個include之前刪除。 帶有:

runkit_constant_remove('config');

這就是為什么我需要問您一個更安全/可信賴的解決方案,該解決方案可以保證只能從Config類獲取配置信息。

我建議用一個ini文件。 下面的簡單示例:

config.ini

[app]
user = myuser
pass = 123123
stage = 1

您的配置初始化:

Config::init(parse_ini_file('app.ini'));

parse_ini_file文檔單擊此處

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM