Qu'est-AOP & pourquoi devrais-je l'utiliser?
De gens continuent à mentionner que je devrais être en utilisant PDO dans mon PHP lorsque vous traitez avec MySQL, je n'ai jamais entendu parler de ça avant.
Qu'est-ce que PDO? Comment est-il utilisé et quels sont les avantages et les inconvénients?
Merci,
- double possible de mysql vs PDO
- Regardez MySQLi ainsi. C'est une programmation orientée objet classe pour accéder à MySQL dans PHP. C'est une sorte de mix entre SQL brut et AOP.
- Brian Jones parlez-vous de la déclaration préparée à l'avance?
- si vous trouvez le message utile s'il vous plaît ne pas oublier de le marquer comme réponse 🙂
- Bonjour, voici un tutoriel complet sur PHP PDO, programmerblog.net/php-pdo-ajax-tutorial-example et PHP MySQLi - programmerblog.net/php-mysqli-tutorial-for-beginners
Vous devez vous connecter pour publier un commentaire.
Envisager AOP comme un construit dans la classe qui vient emballé avec PHP, il est très facile pour vous d'interagir avec votre base de données. lors du développement d'une Application PHP que vous devez prendre soin de beaucoup de choses, comme établir une connexion, création de requête, pour récupérer le résultat de convertir des ressources dans un tableau, d'échapper à MySQL d'Injection à l'aide de
mysql_real_escape_string()
maintenant que c'est beaucoup de choses à être pris en charge, moins, mais pas la dernière imaginez une situation où vous voulez passer de mysql à mysqli ou MSSQL pour que vous avez besoin d'aller à travers chaque fonction et de modifier chaque ligne de code en fonction de la nécessité. PDO pour éradiquer ce problème en fournissant un centralisée de la classe.D'élaborer un oeil au code ci-dessous.
pour établir une connexion à MySQL en Utilisant PDO :
c'est ça, la connexion est établie et il est possible de réutiliser $dbh pour l'exécution de requêtes par exemple pour récupérer le résultat dans une table utilisateur, vous avez juste besoin de deux ligne de code.
Maintenant
$user
aurez toutes les valeurs extraites comme un tableau associatif.Pour Insérer la valeur dans la base de données, vous devez effectuer les opérations suivantes.
Le code ci-dessus utilise nommé espace réservé, de cette façon, PDO vous garder à l'abri de nombreuses vulnérabilités qu'il va vous éloigner de MySQL Injection. pour vous lancer, jetez un oeil à ce tutoriel par netttus, ils ont expliqué qu'il est très bien, cet article va vous expliquer tous vos dilemmes concernant les AOP
http://net.tutsplus.com/tutorials/php/why-you-should-be-using-phps-pdo-for-database-access/
$sth
est une variable utilisée pour se référerstatement handle
pour les AOP requêtes,:name, :email
etc. sont des espaces réservés, bindParam remplacer:name
avecMy name
dans l'exemple ci-dessus. vous devez passer par l'article mentionné ci-dessus, l'auteur a mis au travers de quelques très bons points qui vous aideront à comprendre le conceptmysql_escape_string()
sur chaque de cet espace réservé à échapper à l'script malveillant NOTE : je ne suis pas sûr de ce que PDO n'en interne en toute sécurité de l'exécution de la requête, et la mention demysql_escape_string()
était juste un exemple et pas nécessairement vrai.http://php.net/manual/en/book.pdo.php
AOP est un objet de classe orientée pour la composition et l'exécution de requêtes MySQL. Ce qui peut sembler comme une couche supplémentaire de complexité, mais PDO vous permet d'écrire des requêtes plus simplement dans votre php, et de programmation pour écrire des requêtes (d'autres constructions de code différentes lignes de votre requête pour vous).
AOP prend également en charge un certain nombre de questions de sécurité, comme pour échapper à vos requêtes sql. Vous ne serez jamais faire aucune de ces choses si vous n'avez pas utiliser une couche d'abstraction de base comme AOP, et même si vous essayez, vous pouvez facilement oublier, ou de le faire de manière incorrecte.
Si vous n'êtes pas préoccupé par la sécurité (des choses comme L'injection SQL) et vous êtes capable d'écrire le naturel des requêtes MySQL vous avez besoin, alors vous n'avez pas besoin de s'inquiéter à ce sujet. D'apprentissage, il peut rendre les choses plus facile à l'avenir, lorsque vous travaillez sur plus structurée de projets qui utilisent des cadres.