Je travaille sur un petit site PHP. J'ai besoin d'une classe d'accès à la base de données MySQL facile à configurer et à utiliser. P>
n'a pas besoin d'être un cadre complet, j'ai seulement besoin d'un maximum. quelques classes. P>
11 Réponses :
Adodb est assez facile à travailler avec et d'être envisagé. Quelques échantillons illustratifs:
J'ai trouvé Adodb pour être le plus facile à installer.
Salut M. Dixon, mais cette bibliothèque a besoin d'une bonne documentation. Connaissez-vous de toute ressource Web où je peux trouver de l'aide avec cela. J'ai essayé de créer une classe pour des tâches associées à la base de données à l'aide de cette bibliothèque mais ne pouvait pas bien le faire bien.
J'ai trouvé que la documentation était OK (voir phplens.com/lens/adodb/docs-AdoDB. htm )
PDO fonctionne très bien pour moi, même si ce n'est pas une bibliothèque entièrement soufflée comme Poire :: MDB2. P>
PDO est une extension compilée de PHP5, il existe donc un petit bénéfice de performance. P>
Dans mon prochain projet, je considérerai également cette bibliothèque.
Si vous êtes satisfait d'être SPECIFIER SPÉCIFIQUE, MySQLI est le choix par défaut. P>
Vous pouvez essayer ZEND_DB de Zend Framework . Plus tard, vous pouvez inclure des composants de mode de ZF. P>
Si vous n'avez pas de besoins vraiment spécifiques, je vous recommanderais de jeter un coup d'œil à PDO , qui est groupé avec php> = 5.1. p>
Il est entièrement orienté objet, facilite la compatibilité entre les moteurs de la DB; Et c'est une intégration dans PHP en tant que extension C rend probablement un peu plus rapide que les équivalents développés dans PHP. P>
Vous pouvez également consulter le Extension MySQLI , qui fournit à la fois un objet orienté foncé et un objet -Le interface foranée.
Mais je préférerais aller à PDO, je pense ... p>
Et, maintenant que vous dépensez (investissez ;-)) à la recherche de nouvelles choses, vous pourriez jeter un coup d'œil à des déclarations préparées: elles sont prises en charge par MySQLI et PDO , et sont gentils pour des raisons de sécurité (notamment) (pas besoin de vous inquiéter de l'échappement de vos données pour empêcher les injections SQL) P>
Si vous aviez dit que vous avez besoin d'une solution complète orm, je vous aurais dirigé vers Doctrine , qui est vraiment un grand cadre orm; Mais c'est probablement trop trop pour vos besoins ... P>
PDO ne facilite pas la compatibilité entre les RDBMS. Il manque de constructions pour cacher les différences entre des choses comme la manière dont les dentètes sont traitées différemment sur tous les RDBMS. PDO est toujours un bon choix pour accéder à un SGBDM. Mais il est incomplet si le support croisé est nécessaire.
J'ai utilisé Ce Une fois de temps en temps, c'est plutôt bien! (Et a une fonctionnalité Autoslash génial), il est facilement personnalisable et assez petit, mais cela avait tout ce dont j'avais besoin. Vous pouvez probablement relativement facile à étendre à la mise en cache ou à ce que vous désirez. P>
bonne chance de trouver ce qui vous convient le mieux. :) p>
Aussi PDB de Digg, qui est un simple emballage PDO ou quelque chose peut être téléchargé à partir de http : //code.google.com/p/digg/wiki/pdb P>
La classe DB la plus simple et légère est
http://code.google .COM / P / EDB-PHP-Classe / P>
<?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;
?>
Euh wow, je vais tester cela et j'espère que ça fonctionne. Ça a l'air vraiment sympa.
+1 pour l'extension PDO (PHP Data Objects) de PHP. Je l'utilise à côté d'une classe de base de données très pratique qui étend PDO. Vous pouvez trouver ce projet open-source sur l'hébergement de projet de Google à http: // code. google.com/p/php-pdo-wrapper-class . P>
Je recommande d'utiliser Php-mysqli-Base de données de la base de données , qui utilise MySQLI et déclarations préparées (cela signifie que vous serez protégé de l'injection SQL). La classe est bien documentée. P>
De Zend-cadre, vous pouvez vraiment prendre ce que vous voulez. Même seulement zend_db! Et il y a bien sûr un adaptateur PDO mysql.