前の記事 ≪:リッチなExcel風グリッドインタフェースを提供するJavascriptライブラリ...
次の記事 ≫:リンク先のプレビューを吹き出し方式のポップアップでサムネイル表...

PHP5で設定保存用Singletonクラス

2006年10月20日-はてなブックマーク

スポンサード リンク
[PR] 英単語を忘却曲線アプリを使って超効率よく記憶する方法

i am actually a giant robot.

The solution I've come up with is simple, easy, and follows good design practices. I created a singleton Config class that I use to modify and retrieve my configuration information.

PHP5で設定保存用Singletonクラス。
PHPにおいて、グローバル変数や、defineでグローバルな設定情報を保存してしまうと、グローバル領域が使われ、
変数名がぶつからないようにしても規模が大きくなると変数名がぶつかってしまって思わぬプログラムの誤動作をまねく危険性があります。

そこで、次のようなConfigクラスを定義。

<?php

class Config
{
    
private static $data = array();
    
    
private function __construct()
    {
    }

    
public static function get($key)
    {
        return 
self::$data[$key];
    }

    
public static function set($key$val)
    {
        
self::$data[$key] = $val;
    }
}
?>

そして、次のように使うことでConfigクラス内に変数を閉じ込め、グローバル領域を汚染することもありません。

<?php
Config::set("key", "value"); // 値を設定
echo Config::get("key"); // 値を取得
?>

staticなメソッドなので、Configクラスのインスタンスを作成することなく、1行で値を取得できるのもいいですね。

スポンサード リンク

By.KJ : 2006年10月20日 11:07 livedoor Readerで購読 Twitterに投稿

間違いの指摘をしていただける方はメール、あるいはTwitter/FBでお願いします(クリック)