PHPで設定ファイルを変更する方法

WBOY
リリース: 2016-06-13 12:50:14
オリジナル
914 人が閲覧しました

php で設定ファイルを変更する方法
Config.php コードは次のとおりです:

 <?php<br />
<br />
return array(<br />
        'version' => '20120823',<br />
	'secretKey' => '92fe5927095eaac53cd1aa3408da8135',<br />
	'areaname' => 'China',<br />
);<br />
ログイン後にコピー


次に、setConfig($fileName, $value) メソッドを定義して areaname の値を変更する Common.php を作成したいと思います。このうち、$fileNameはConfig.phpファイルの名前で、$valueは具体的にどう書けばよいのかわかりません。 ?
php 設定ファイル 配列


-----解決策---------
file_get_contents()
file_put_contents()
-----解決策---------
function setConfig($fileName, $value) {<br />
  ob_start();<br />
  $a = @include($fileName);<br />
  ob_end_clean();<br />
  if(! is_array($a)) trigger_error("Invalid data file", E_USER_ERROR);<br />
  $a['areaname'] = $value;<br />
  file_put_contents($fileName, '<?php return ' . var_export($a, 1) . ';');<br />
}<br />
<br />
setConfig('config.php', 'aaa');
ログイン後にコピー

ただし、ソリューションの制限により、この関数は普遍的ではありません
たとえば、secretKey を変更したい場合、変更することはできません
function setConfig($key, $value, $fileName='config.php') {<br />
  ob_start();<br />
  $a = @include($fileName);<br />
  ob_end_clean();<br />
  if(! is_array($a)) trigger_error("Invalid data file", E_USER_ERROR);<br />
  $a[$key] = $value;<br />
  file_put_contents($fileName, '<?php return ' . var_export($a, 1) . ';');<br />
}<br />
<br />
setConfig('areaname', 'bbb');
ログイン後にコピー

に書き換えることをお勧めします-----解決策-------------------------- -----
正解は 2 階です。優れた開発者は汎用性に関するアイデアを持っている必要があります

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!