私は現在、非常に単純なデータベースアプリケーションであるプロジェクトで働いています。ユーザーがアップロードする必要のあるphpファイルがいくつかあります。次に、彼は特定のファイルを呼び出しinstall.html
ます。サーバーにアクセスするためのルートとパスワードを入力する必要があります。次に、データベースといくつかのテーブルが作成されます。現在、この情報も必要な他のファイルがあります。を含めることを考えましたconnect.php
。しかし、ここに質問があります:connect.php
別のphpファイルを介してこれのルートとパスワードを編集することは可能ですか?そうでない場合は、この問題を回避する他のユーザーフレンドリーな方法を知っていますか?
2 に答える
1
確かにあなたはそれを行うことができます。一般的な考え方は、プレースホルダー(たとえば、「{{username}}」や「{{password}}」など)を含む文字列を取得し、それを正しい値に置き換えてstr_replace
から、内容を。でファイルに書き込むことですfile_put_contents
。
プレースホルダーを含む文字列は、スクリプトで文字列として宣言することも、。を使用してファイルから読み取ることもできますfile_get_contents
。だからあなたは持つことができます:
$replacements = array(
'{{username}}' => 'root',
'{{password}}' => '123456',
);
$config = file_get_contents('config.php');
$config = str_replace(array_keys($replacements),
array_values($replacements),
$config);
file_put_contents('config.php', $config);
于 2012-11-03T15:04:09.170 に答える
0
PHPファイルは単なるテキストファイルです。PHP でテキスト ファイルを変更できるように、PHP で PHP ファイルを変更することもできます。これは単なる標準の file-ioです。 Filesystem Docsを参照してください。
ファイルへのアクセス権があり、読み取り可能であることを確認してください。また、ユーザーがインストール スクリプトを使用した後に、セットアップを強化する方法をユーザーに説明することも検討してください。セキュリティ上の理由から、PHP ファイルはホスティング環境では読み取り専用にする必要があります。
于 2012-11-03T15:19:41.930 に答える