この記事では、構成可能な PHP アプリケーションを作成するいくつかの方法を説明します。この記事では、アプリケーションの理想的な構成ポイントについても検討し、構成可能すぎるアプリケーションと閉鎖的すぎるアプリケーションの間のバランスを模索します。
PHP アプリケーションを他の人や企業が利用できるようにする予定がある場合は、プログラムが構成可能であることを確認する必要があります。少なくとも、データベース内の内容が公開されないように、ユーザーが安全な方法でデータベースのログインとパスワードを設定できるようにします。
この記事では、構成設定を保存し、これらの設定を編集するためのいくつかのテクニックを説明します。さらに、この記事では、どの要素を構成可能にする必要があるか、および構成の過剰または過少のジレンマに陥ることを回避する方法についてのガイダンスも提供します。
設定に INI ファイルを使用する
PHP には設定ファイルのサポートが組み込まれています。これは、データベース接続のタイムアウトやセッションの保存方法などの定数が定義される php.ini ファイルなどの初期化ファイル (INI) メカニズムを通じて実現されます。必要に応じて、この php.ini ファイルでアプリケーションの構成をカスタマイズできます。説明のために、次のコード行を php.ini ファイルに追加しました。
myapptempdir=foo
次に、リスト 1 に示すように、この構成項目を読み取るための小さな PHP スクリプトを作成しました。
リスト 1. ini1.php
<p><?php<br>function get_template_directory()<br>{<br> $v = get_cfg_var( "myapptempdir" );<br> return ( $v == null ) ? "tempdir" : $v;<br>}<br>echo( get_template_directory()."n" );<br>?></p> ログイン後にコピー |
このコードをコマンドラインで実行すると、次の結果が得られます。
すごい。しかし、標準の INI 関数を使用して myapptempdir 構成項目の値を取得できないのはなぜでしょうか?調べてみたところ、ほとんどの場合、これらの方法ではカスタム構成アイテムを取得できないことがわかりました。ただし、get_cfg_var 関数を使用してアクセスできます。 |
<p>% php ini1.php<br>foo<br>% </p>
これは、INI ファイルにアクセスする方法の良い概要です。したがって、別のメカニズムを使用したい場合、またはこの INI を保存して変換したい場合は、ファイルを別の場所に配置すれば、多くの関数を変更するという面倒な作業を行う必要はありません。 |
<p>function get_ini_value( $n, $dv )<br>{<br> $c = get_cfg_var( $n );<br> return ( $c == null ) ? $dv : $c;<br>}</p><p>function get_template_directory()<br>{<br> return get_ini_value( "myapptempdir", "tempdir" );<br>} </p>
この場合、ローカルの mylib ディレクトリをインクルード パスに追加したので、そのディレクトリから PHP ファイルを要求できるようになります。 require ステートメントにパスを追加せずに。 |
http://www.bkjia.com/PHPjc/446814.html
www.bkjia.com
true