2009-07-17 7 views
3

私は、PHP5でmySQLiクラスを拡張した単純な、しかし機能的なクラスの例の例を探しています。私はストアドプロシージャにも興味があります。基本的に私が必要とするのは実践的で有用なクラスの例です。私は例で最もよく学びますが、残念なことに、本当にしっかりした単純な例があるようなサイトや本を見つけることができませんでした。私が見ているすべての例は複雑なので、私は理解できません。あるいは、私はクラスをすぐにインラインでインスタンス化することもできるほどシンプルです。もし誰かが私にこのような例を与えても、うまくいくことを説明できれば素晴らしいだろう。私の長期目標は、データベースの認証を扱うクラスをインスタンス化してから、SQL文を受け取り、出力を変数に渡すことです。説明付きの単純なmySQLiクラスの例を探す

誰かが私を助けるために時間をとることを喜んでしているなら、それは非常に高く評価されるでしょう! 、ありがとうございました

答えて

1

PHP PEAR MDB2にチェックを入れましたか?そう単純ではない http://pear.php.net/package/MDB2

その、PHPの私見では、その最高DAL ...

+0

複雑に見え聖がらくたをサポートしている...とにかく答えをありがとう! –

1

mysqliのについて、あなたはそれらの記事を見てみることができます:

(かなり古いですが、mysqli拡張はそれほど長くは変わっていないので、まだOK)

バージョン5.1以降、PHPにはPDOが含まれています。 mysqli_query、pg_query、oci8_queryやそのようなものを使用せず、$ pdo-> queryのみを使用します.SQLは互換性がなければなりませんが、別の問題です。 ()

別のアプローチは、例えば、同様に、ORMを使用されるだろう、Doctrine

それはMySQLiをを拡張するクラスはありませんが、抽象的なDBエンジンへの完全なフレームワーク - 。それには、スキーマを書きますDBの構造を記述し、クエリを送信するために "疑似SQL"言語を使用するか、SQLを抽象化するオブジェクト指向APIを使用するだけです(ほとんどの場合)。

まずは使いにくいしかし、reall yパワフルで便利です(多くの種類のプロジェクトでは生産性には悪くないと思います)

0

PDOは最近、PHP標準のほうがはるかに優れていると考えられています。私は1年か2年前に簡単なPDOクラスを書いて、興味があればあなたにリンクを与えることができます。

+0

こんにちはこれは私のポストではありませんが、あなたのPDOクラスを共有したいのであれば、私はそれを見ることに興味があります – JasonDavis

0

ここでは、mysqliクラスに組み込まれたクエリタイミングを追加する簡単な例を示します。

これは、iTimerインターフェイスを実装する「MyTimer」クラスを定義したことを前提としています。 iTimerクラスは、最も単純な形式で、指定された$キーの開始時刻と終了時刻を記録します(microtime()またはgetrusage()などを使用します)。

<?php 
interface iTimer 
{ 
    public function start($key); 
    public function stop($key); 
} 

class mysqlp extends mysqli 
{ 
    function query($query, $resultmode) 
    { 
     $timer = MyTimer::getInstance(); 
     $timer->start('mysqli::query'); 
     $result = parent::query($query, $resultmode); 
     $timer->stop('mysqli::query'); 
     return $result; 
    } 
} 

#usage 
$mysqli = new mysqlp("localhost", "my_user", "my_password", "world"); 
$results = $mysqli->query("SELECT id FROM foo"); 
関連する問題