Maison > Article > développement back-end > Compréhension approfondie de l'utilisation de base de PDO en PHP
Cet article vous apporte les connaissances de base sur PDO est une nouvelle fonctionnalité majeure ajoutée à PHP5. Notre serveur de base de données est MySQL. Toutes les opérations de base de données du code du programme sont exploitées par une fonction mysql ou mysqli().
1) Cohérence du codage
Configurez et recompilez PHP. Par exemple, si la base de données doit passer de SQL à MySQL, il vous suffit de charger le pilote PDO_MYSQL.
3) Fonctionnalités orientées objet PDO utilise les fonctionnalités orientées objet de PHP5 pour obtenir une communication de base de données plus puissante et plus efficace.
4) Hautes performances o PDO est écrit en C, compilé en PHP et comparé à d'autres solutions écrites en PHP, bien que ce soit la même chose, il offre des performances plus élevées.
1. Configuration PDO
1 Ouvrez le fichier de configuration PHP php.ini, recherchez la ligne php_pdo_mysql.dll et retirez l'argent pour acheter le vôtre. Sous-numéro 扩 2) Il doit y avoir un fichier d'extension correspondant dans l'extension
2 , Format de configuration de la source de données
(1) Connexion à la base de données, nom d'utilisateur de la base de données, mot de passe de la base de données
(3) Exécuter l'ajout de
(1) Première méthode de requête :
(3)执行查询
实现代码:
<?php header('content-type:text/html;charset=utf8'); //连接数据库 $dsn="mysql:dbname=test;host=127.0.0.1"; //数据库的用户名 $user="root"; //数据库的密码 $password="123456"; //生成PDO对象 $object = new PDO($dsn,$user,$password); $sql="select * from student"; $result = $object->query($sql); while($arr=$result->fetch()){ print_r($arr); }
查询结果为:
$result的打印结果为:
还可以用:
$data=$result->fetchAll(); print_r($student_info);
输出结果为二维数组:
注释:
1、query()执行查询语句,返回结果集对象;
2、用循环利用fetch()方法逐个的取出记录,返回的是关联数组和索引数组两种数组,和mysql_fetch_array()的返回结果一致
3、fetchAll()方法可以一次取出结果集中所有的数组,以二维数组的形式返回,但仍然是关联数组和索引数组两种数组
数字索引和关联索引都有,属于浪费资源,我们只需要关联索引:还可用用一下方式查询:
$object->setAttribute(PDO::ATTR_CASE, PDO::CASE_UPPER); $result = $object->query($sql); $result->setFetchMode(PDO::FETCH_ASSOC); $result_array = $result->fetchAll(); print_r($result_array);
结果为:
注释:
setAttribute()方法是设置部分属性,主要属性有:PDO::ATTR_CASE、PDO::ATTR_ERRMODE等,我们设置的是PDO::ATTR_CASE(使用关联索引获取数据)
PDO::CASE_UPPER是设置关联索引为大写,
PDO::CASE_LOWER -- 强制列名为小写
PDO::CASE_NATURAL -- 列名按照原始方式
PDO::CASE_UPPER -- 强制列名为大写
setFetchMode()方法设置获取结果集的返回值类型,同样类型还有:
PDO::FETCH_ASSOC --关联数组形式
PDO::FETCH_NUM -- 数字索引形式数组
PDO::FETCH_BOTH --两者数组形式都有
PDO::FETCH_OBJ -- 按照对象的形式,类似于以前的mysql_fetch_object()
大家如果感兴趣的话,可以点击《PHP视频教程》进行更多关于PHP知识的学习。
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!