Faydalı PHP veritabanı sınıfı

11 Cevap php

Ben küçük bir PHP web sitesinde çalışıyorum. Ben yapılandırmak ve çalışmak kolay bir MySQL veritabanı erişim sınıf gerekir.

Tam bir çerçeve olması gerekmez, ben sadece bir maksimum gerekir. Birkaç sınıfları.

11 Cevap

ADODb oldukça kolay çalışmak ve dikkate değer. Bazı açıklayıcı örnekler:

  //connect
  $dsn = 'mysql://user:pwd@localhost/mydb'; 
  $db = ADONewConnection($dsn);  

  //get a single value     
  $value=$db->GetOne("select foo from bar where x=?", array($x));

  //get a row
  $row=$db->GetRow("select * from bar where x=?", array($x));

  //easy insert example
  $record=array("id"=>1, "foo"=>"bar");
  $db->AutoExecute("table", $record, "INSERT");

PDO o PEAR :: mdb2 gibi tam şişmiş bir kütüphane değil Tho bile, benim için harika çalışıyor.

PDO PHP5 derlenmiş bir uzantısı olduğunu, bu nedenle küçük bir performans yararı da var.

Eğer belirli MySQL olmak ile mutlu iseniz, MySqli varsayılan seçimdir.

I PEAR::MDB2 arıyorsun ne olduğunu düşünüyorum.

Eğer gerçekten özel ihtiyaçları yoksa, ben PHP> = 5.1 ile birlikte olan, PDO bakmak öneriyoruz.

Bu tamamen nesne yönelimli, DB motorları arasındaki uyumu kolaylaştırır oluyor; C uzantısı biraz daha hızlı PHP gelişmiştir muadillerine göre muhtemelen yapar ve PHP entegrasyonu bulunuyor.

You could also take a look at the mysqli extension, which provides both a function-oriented and an object-oriented interface.
But I'd rather go to PDO, I think...


And, now that you are spending (investing ;-) ) some time looking for new stuff, you could take a look at prepared statements : they are supported by both mysqli and PDO, and are nice for (amongst other things) security reasons (no need to worry about escaping your data to prevent SQL injections)


If you had said you need a full ORM solution, I would have pointed you to Doctrine, which is really a great ORM framework ; but it's probably way too much for your needs...

Sen Zend_Db Zend Framework adlı deneyebilirsiniz. Daha sonra ZF modu bileşenlerini içerebilir.

I this Arada bir, Gayet iyi kullandım! (Ve harika bir autoslash özelliği vardır), kolayca özelleştirilebilir ve oldukça küçük, ama ben gerekli her şeyi vardı. Muhtemelen nispeten kolay önbelleğe veya ne arzu desteklemek için genişletebilirsiniz.

İyi şanslar size en uygun ne buluyorlar. :)

Basit bir PDO sarıcı veya bir şey de en digg PDB, http://code.google.com/p/digg/wiki/PDB indirebilirsiniz

Basit ve hafif db sınıfı

http://code.google.com/p/edb-php-class/

 <?php
    $result = $db->q("select * from `users`limit 3");

    foreach($result as $a){
            $a = (object) $a;
            echo $a->id.' '.$a->name.' '.$a->url.' '.$a->img.'</br>';
    }


    $result = $db->line("select * from `users` where id = '300' limit 1");
    echo $result['name']; 
    echo $result['surname']; 



    $name = $db->one("select name from `ilike_pics` where id = '300' limit 1");
    echo $name;
    ?>

PHP'nin PDO (PHP Data Objects) uzantısı için +1. Ben PDO uzanan gerçekten kullanışlı bir veritabanı sınıfının yanında kullanabilirsiniz. Sen http://code.google.com/p/php-pdo-wrapper-class Hosting Google'ın Projesi bu açık kaynak projesi bulabilirsiniz.

Ben (bu SQL enjeksiyon korunmuş olacağı anlamına gelir) MySQLi ve hazırlanmış deyimleri kullanır ki, PHP-MySQLi-Database-Class kullanmanızı öneririz. Sınıf iyi belgelenmiştir.