2010-11-19 6 views
0

これは本当にばかげた質問のように聞こえるかもしれませんが、私はオブジェクト指向プログラミングの概念を理解し始めていますが、PHPのシングルトンパターンについては混乱しています。OOPクエリ関数

シングルトンパターンに変数として保存されたフェッチされた行の結果を保存すると同時にどのようにクエリを組み込むことができますか?

たとえば、以下のコードはどのように組み込まれますか?これは、あなたが上で提示てきた機能には適していません

the singleton pattern is a design pattern used to implement the mathematical concept of a singleton, by restricting the instantiation of a class to one object. This is useful when exactly one object is needed to coordinate actions across the system

$query = "SELECT * FROM members WHERE email= '".mysql_real_escape_string($_SESSION['email1'])."'"; 
$result = mysql_query($query) or die(mysql_error()); 
$number = mysql_num_rows($result); 
$i = 0; 

while ($i < $number) 
{ 

    $first_name = mysql_result($result,$i,"first_name"); 
    $last_name = mysql_result($result,$i,"last_name"); 
    $state = mysql_result($result,$i,"home_state"); 
    $id_district = mysql_result($result,$i,"district"); 
    $political_views = mysql_result($result,$i,"political_views"); 
    $first_issue = mysql_result($result,$i,"first_issue"); 
    $second_issue = mysql_result($result,$i,"second_issue"); 
    $third_issue = mysql_result($result,$i,"third_issue"); 
    $email = mysql_result($result,$i,"email"); 
    $iStand = mysql_result($result,$i,"iStand"); 
    $photo = mysql_result($result,$i,"photo"); 
    $code = mysql_result($result,$i,"code"); 
    $changed = mysql_result($result,$i,"changed"); 
    $mem_ID   = mysql_result($result,$i,"member_ID"); 
    $pass = mysql_result($result,$i,"password"); 
    $privacy = mysql_result($result,$i,"privacy"); 
    $since = mysql_result($result,$i,"invite_date"); 
    $nombre = mysql_result($result,$i,"peer_name"); 

    $i++; 
    } 
+0

質問には関係ありませんが、最初はこのコードは何ですか? LAST行のみの値を変数に入れるために複数の行をフェッチするのはなぜですか?連想配列(mysql_fetch_array)として行全体を尋ねるのではなく、なぜ各列を変数に割り当てるのですか?このコードは存在してはいけません! –

+0

電子メールフィールドはユニークであるため、2人のユーザーが同じ電子メールを持つことができないため、dbからフェッチされる行は1つだけです。 – Lance

+0

その場合、whileループは必要ありません。 – BoltClock

答えて

0

A Singletonパターンは、特定の目的を持っています。

シングルトンパターンは、たとえば、システム全体の設定クラスを作成するときに使用されます。シングルトンは、複数回インスタンス化されるのを防ぎ、代わりに設定情報を取得して設定する単一の場所を提供します。

+1

シングルトンは避けるべきアンチパターンであると付け加えることができます。 – Gordon

関連する問題