php连接数据库为我们提供了mysqli方法和PDO方法,而PDO可以针对不同的数据库,只需要修改连接字符串和部门查询语句。如果项目需要在不同的数据库中切换,最好使用的PDO。使用 MySQLi, 如果不同数据库,你需要重新所有代码,包括查询。对于这次的协会网站项目,我们得数据库为mysql,所以使用的mysqli方法。
而对于mysqli与mysql的区别,在php5版本出来后,就不建议使用mysql扩展,目前我的理解是mysqli在封装了诸如事务等一些高级操作,同时封装了DB操作过程中的很多可用的方法,趋向于对象方式。mysqli对于mysql的优点在看来了多数文章后,总结在mysql是非持继连接函数,mysql每次链接都会打开一个连接的进程;mysqli是永远连接函数,多次运行mysqli将使用同一连接进程,从而减少了服务器的开销。
mysqli过程连接
<?php
$servername="";//数据库服务器名称
$username="";//数据库连接用户名
$password="";//用户名密码
$database="";//数据库名
//创建连接
$conn=mysqli_connect($servername,$username,$password,$database);
//检查连接
if(!$conn){
die("connect error:".mysqli_connect_error());
}
//连接成功输出
else{
echo "connect success";
}
mysqli对象连接
<?php
$servername="";
$username="";
$password="";
$database="";
//创建连接对象
$conn= new mysqli($servername,$username,$password,$database);
//检查连接
if($conn->connect_error){
die("connect error".$conn->connect_error);
}
else{
echo "connect success";
}
//执行sql语句
$sql="select * from user where UserID>22 and UserID<145042323";
$result=$conn->query($sql);
while($row=$result->fetch_array()){
echo $row[0];//输出数据
}
$conn->close();//关闭数据库
pdo连接数据库
<?php
$dbs = "mysql";//数据库类型
$servername = "";
$username = "";
$password = "";
$database = "";
$dsn="$dbs:host=$servername;dbname=$database";
//数据库连接
try {
$conn = new PDO($dsn,$username, $password);//创建连接对象
echo "Connected successfully";
}
//异常处理
catch(PDOException $e)
{
echo $e->getMessage();
}
"$dbs:host=$servername;dbname=$database";//注意,如果没有申明数据库类型变量,而是直接在$dsn语句写入数据库类型如下
<pre name="code" class="php">$dsn="mysql:host=$servername;dbname=$database"//会报出无效的数据库名,建议使用变量声明数据库类型