web-dev-qa-db-ja.com

configuration.phpをオーバーライドするには

使用しているホストに基づいてJoomlaの設定を自動的に上書きしたいのですが。例えば:

$servername = getenv("HTTP_Host");
if($servername == "localhost") {
    JConfig::Host = 'localhost';
    JConfig::user = 'root';
    JConfig::password = 'pass';
    JConfig::db = 'myproject';
}

これを行うための最良の方法は何ですか? (上記のコードは機能しません)

2
Gerfried

設定ファイルを変更するのは良い考えではありませんが、これはこれを行う1つの方法です

$servername = getenv("HTTP_Host");
if($servername == "localhost") {
    $Host = 'localhost';
    $user = 'root';
    $password = 'pass';
    $db = 'myproject';
}

//now use it in the config file like this 
define('DB', $db);
define('DBHOST', $dbhost);
define('USR', $usr);
define('PWD', $pwd);

class JConfig {

    public function __construct(){
            $this->Host = DBHOST;
            $this->user = USR;
            $this->password = PWD;
            $this->db = DB;
    }
    public $Host;
    public $user;
    public $password;
    public $db;

お役に立てば幸いです

1
Joomler