1

実行時に構成ファイルを編集することは可能ですか? モジュールマネージャーを開発していますが、これは構成のいくつかの側面を動的に変更できる必要があります。

これは、実行時にこのファイルを読み書きでき、たとえばこの行を変更できることを意味します。

$config ['WebTitle'] = 'foo';

いくつかのヒント?

PD: この構成を保存するために、データベースに新しいテーブルを作成する必要はありません。代替案?

編集:しばらく検索した後、探しているものと非常によく似た答えを見つけましたが、成功していません。

かもしれない。htaccess はこれをブロックしますか?

応答へのリンク:リンク

4

2 に答える 2

0

実際に構成ファイルを変更したいようです。もしそうなら、はい、あなたはそれを行うことができます。ファイルが Web サーバーによって書き込み可能であることを確認する必要があります。次に、ファイルを fopen() し、メモリに fread() し、必要なものを変更してから、 fwrite() で再び元に戻します。簡単!:)

共有ホスティングの状況では、セキュリティ上のリスクがあることに注意してください。

セットアップ プロセスを実行している場合は、fileperms() を呼び出して権限を確認することをお勧めします。次に、パーミッションが正しくない場合は、ftp でアカウントにログインし、ファイルを書き込み可能にする必要があることをユーザーに伝えます。次に、セットアップが完了したら、ファイルを書き込み不可として再度マークするようにユーザーに指示します。

于 2013-08-07T18:22:36.937 に答える
0

2 番目のコメントに基づいて、はい、Web サイトに応じて構成値を変更する方法があります。config.php ファイルに構成変数を含む if (または switch) ステートメントを含めるだけです。このようにして、同じ CI コアを持つマルチドメイン サイトを持つことができます。

if (($_SERVER['HTTP_HOST']=='localhost') or ($_SERVER['SERVER_ADDR']=='127.0.0.1')) {
   // Config array web site for development
} else if ($_SERVER['HTTP_HOST']=='www.website1.com') {
   // Config array website1
} else if ($_SERVER['HTTP_HOST']=='www.website2.com') {
   // Config array website2       
} ... and so on
于 2013-08-07T16:54:28.100 に答える