各位用户为了找寻关于php连接MySQL的两种方式对比的资料费劲了很多周折。这里教程网为您整理了关于php连接MySQL的两种方式对比的相关资料,仅供查阅,以下为您介绍关于php连接MySQL的两种方式对比的详细内容

记录一下PHP连接MySQL的两种方式。

先mock一下数据,可以执行一下sql。

? 1 2 3 4 5 6 7 8 9 10 11 /*创建数据库*/ CREATE DATABASE IF NOT EXISTS `test`; /*选择数据库*/ USE `test`; /*创建表*/ CREATE TABLE IF NOT EXISTS `user` (   name varchar(50),   age int ); /*插入测试数据*/ INSERT INTO `user` (name, age) VALUES('harry', 20), ('tony', 23), ('harry', 24);

第一种是使用PHP原生的方式去连接数据库。代码如下:

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 <?php $host = 'localhost'; $database = 'test'; $username = 'root'; $password = 'root'; $selectName = 'harry';//要查找的用户名,一般是用户输入的信息 $connection = mysql_connect($host, $username, $password);//连接到数据库 mysql_query("set names 'utf8'");//编码转化 if (!$connection) {   die("could not connect to the database.n" . mysql_error());//诊断连接错误 } $selectedDb = mysql_select_db($database);//选择数据库 if (!$selectedDb) {   die("could not to the databasen" . mysql_error()); } $selectName = mysql_real_escape_string($selectName);//防止SQL注入 $query = "select * from user where name = '$selectName'";//构建查询语句 $result = mysql_query($query);//执行查询 if (!$result) {   die("could not to the databasen" . mysql_error()); } while ($row = mysql_fetch_row($result)) {   //取出结果并显示   $name = $row[0];   $age = $row[1];   echo "Name: $name ";   echo "Age: $age ";   echo "n"; }

其运行结构如下:

Name: harry Age: 20 Name: tony Age: 23 第二种是使用PDO的方式去连接数据库,代码如下:

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 <?php $host = 'localhost'; $database = 'test'; $username = 'root'; $password = 'root'; $selectName = 'harry';//要查找的用户名,一般是用户输入的信息 $pdo = new PDO("mysql:host=$host;dbname=$database", $username, $password);//创建一个pdo对象 $pdo->exec("set names 'utf8'"); $sql = "select * from user where name = ?"; $stmt = $pdo->prepare($sql); $rs = $stmt->execute(array($selectName)); if ($rs) {   // PDO::FETCH_ASSOC 关联数组形式   // PDO::FETCH_NUM 数字索引数组形式   while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {     $name = $row['name'];     $age = $row['age'];     echo "Name: $name ";     echo "Age: $age ";     echo "n";   } } $pdo = null;//关闭连接

其结果与第一种相同。

以上所述就是本文的全部内容了,希望能够对大家熟练掌握mysql有所帮助。