構成可能な PHP アプリケーションを構築する正しい方法_PHP チュートリアル
この記事では、構成可能な PHP アプリケーションを作成するいくつかの方法を説明します。この記事では、アプリケーションの理想的な構成ポイントについても検討し、アプリケーションが構成可能すぎることと閉じられすぎることの間のバランスを模索します。
PHP アプリケーションを他の人や企業が利用できるようにする場合は、アプリケーションが構成可能であることを確認する必要があります。少なくとも、データベース内の内容が公開されないように、ユーザーが安全な方法でデータベースのログインとパスワードを設定できるようにします。
この記事では、構成設定を保存し、これらの設定を編集するためのいくつかのテクニックを説明します。さらに、この記事では、どの要素を構成可能にする必要があるか、および構成の過剰または過少のジレンマに陥ることを回避する方法についてのガイダンスも提供します。
設定にはINIファイルを使用します
PHP には構成ファイルのサポートが組み込まれています。これは、データベース接続のタイムアウトやセッションの保存方法などの定数が定義される php.ini ファイルなどの初期化ファイル (INI) メカニズムを通じて実現されます。必要に応じて、この php.ini ファイルでアプリケーションの構成をカスタマイズできます。説明のために、次のコード行を php.ini ファイルに追加しました。
myapptempdir=foo
次に、リスト 1 に示すように、この構成項目を読み取るための小さな PHP スクリプトを作成しました。
リスト 1.ini1.php
関数 get_template_directory()
{
$v = get_cfg_var( "myapptempdir" );
return ( $v == null ) : $v;
}
echo( get_template_directory()."n" );
?>
このコードをコマンドラインで実行すると、次の結果が得られます:
% php ini1.php
ふー
%
素晴らしい。しかし、標準の INI 関数を使用して myapptempdir 構成項目の値を取得できないのはなぜでしょうか?調べてみたところ、ほとんどの場合、これらの方法ではカスタム構成アイテムを取得できないことがわかりました。ただし、get_cfg_var 関数を使用してアクセスできます。
この方法を簡素化するには、次に示すように、構成キー名とデフォルト値をパラメーターとして受け取る 2 番目の関数で変数へのアクセスをカプセル化します。
リスト 2.ini2.php
関数 get_ini_value( $n, $dv )
{
$c = get_cfg_var( $n );
return ( $c == null ) $dv : $c;
}
関数 get_template_directory()
{
return get_ini_value( "myapptempdir", "tempdir" );
}
これは INI ファイルにアクセスする方法の概要です。そのため、別のメカニズムを使用したり、INI ファイルを別の場所に保存したい場合でも、多くの機能を変更するという面倒な作業を行う必要はありません。
アプリケーションの構成に INI ファイルを使用することはお勧めしません。理由は 2 つあります。まず、これにより INI ファイルの読み取りが容易になりますが、INI ファイルを安全に書き込むことはほぼ不可能になります。したがって、これは読み取り専用の構成項目にのみ適しています。次に、php.ini ファイルはサーバー上のすべてのアプリケーションで共有されるため、アプリケーション固有の構成項目をそのファイルに書き込むべきではないと思います。
INI ファイルについて知っておくべきことは何ですか?最も重要なことは、以下に示すように、構成アイテムを追加するためにインクルード パスをリセットする方法です。
リスト 3.ini3.php
echo( ini_get("include_path")."n" );
ini_set("パスを含める",
ini_get("include_path").":./mylib" );
echo( ini_get("include_path")."n" );
?>
この例では、ローカルの mylib ディレクトリをインクルード パスに追加したため、require ステートメントにパスを追加せずに、そのディレクトリから PHP ファイルを要求できます。
PHP での設定
構成エントリを INI ファイルに保存する一般的な代替方法は、単純な PHP スクリプトを使用してデータを永続化することです。以下に例を示します。
リスト 4. config.php
#一時ディレクトリの場所を指定します
#
$TEMPLATE_DIRECTORY = "tempdir";
?>
この定数を使用したコードは次のとおりです。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP でデータベースを操作するのは非常に簡単です。この章では、CRUD (作成、読み取り、更新、削除) 操作について理解します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー
