php mysql 连接类

admin3个月前软件教程39

今天我们来谈一下PHP和MySQL之间的连接。在Web开发中,使用PHP进行数据库的CRUD操作是再正常不过的了。PHP提供了几种连接MySQL数据库的方式,最常用的就是mysqli和PDO。这两种方式有各自的优缺点,但都可以完成我们需要的任务。

让我们先来看一下mysqli连接类。首先,我们需要使用mysqli_connect()函数来连接数据库。它有四个参数:

$servername = "localhost";$username = "username";$password = "password";$dbname = "myDB";//创建连接$conn = mysqli_connect($servername, $username, $password, $dbname);

现在我们已经成功连接到了数据库。要注意的一点是,mysqli连接方式另外一个非常重要的特点就是需要关闭连接,为了避免一些潜在的内存占用风险。为此我们需要加入关闭连接的代码,如下所示:

//关闭连接mysqli_close($conn);

除了连接和关闭操作,我们还需要知道如何查询数据库。一般来说,我们可以使用mysqli_query()函数查询数据库。比如这样:

$sql = "SELECT * FROM myTable";$result = mysqli_query($conn, $sql);if(mysqli_num_rows($result) >0) {while($row = mysqli_fetch_assoc($result)) {echo "id: " . $row["id"]. " - Name: " . $row["name"]. "
";}} else {echo "0 results";}

这会返回MySQL查询的结果,如果有数据则将结果逐行打印出来,如果没有结果则输出"0 results"。

除此之外,我们还可以使用mysqli_prepare()函数和mysqli_stmt_execute()函数执行预处理语句。这样可以避免一些SQL注入攻击风险,提高安全性。

接下来,让我们转向PDO。 PDO也是php中连接MySQL数据库的一种方法,采用的是面向对象的方式,更加简洁易懂。首先我们需要使用PDO连接到数据库:

$servername = "localhost";$username = "username";$password = "password";$dbname = "myDB";try {$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);// 设置 PDO 错误模式为异常$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);echo "连接成功";} catch(PDOException $e) {echo "连接失败: " . $e->getMessage();}

连接时也有四个参数,但是相比mysqli,PDO使用更直接,更简单。同样的,我们也需要关闭PDO连接。和mysqli操作类似,我们可以使用以下代码:

$conn = null;

在PDO中进行查询也有几种方式。我们可以使用PDO::query()方法或者PDO::prepare()方法和PDOStatement::execute()方法来查询。如下所示:

$sql = "SELECT * FROM myTable";foreach ($conn->query($sql) as $row) {print $row['field']."\t".$row['field1']."
";}

或者:

$sql = "SELECT * FROM myTable WHERE id = :id";$stmt = $conn->prepare($sql);$stmt->execute(array(':id' =>$id));$result = $stmt->fetchAll(PDO::FETCH_ASSOC);foreach ($result as $row) {echo $row['field']."\t".$row['field1']."
";}

以上代码中,我们使用了PDO::FETCH_ASSOC来获取关联数组的结果。

本文介绍了两种mysql连接方式的基本用法,包含了连接和关闭连接,查询和使用预处理语句等内容。大家可以根据自身的业务需求进行选择。希望对大家有所帮助!

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

开发一款APP多少钱

随着移动互联网的不断发展,企业对于开发手机APP有很强的需求,但大部分企业不懂技术,又怕被APP开发公司忽悠,所以往往企业都会关心这样一个问题:开发一个app需要多少钱?那么APP开发是怎么定价的?A...

抖音占内存吗

抖音视频收藏都会占内存,不管手机里收藏什么,或下载什么软件都占内存,分占多少而已。抖音(Tik Tok)是由今日头条推出的一款短视频分享APP,于2016年9月上线,是一个专注于年轻人音乐短视频创作分...

作业帮可以连接其他打印机吗

作业帮可以连接其他打印机的,因为作业帮里的拍错题功能不是只能用作业帮买的打印机,任何一款印机都可以。作业帮自主研发多余项学习工具,包括拍照搜题、作业帮直播课、古文助手、作文搜索等。在作业帮,学生可以通...

macos 16更新了什么

最近,Mac操作系统迎来了备受期待的更新——macOS 16。这次的更新带来了一系列令人兴奋的新功能和改进,使Mac系统更加稳定、高效,以及更适应多种用途。下面将为大家详细介绍macOS 16的更新内...

闲鱼显示卖掉了有几种情况

系统在检测到商品已被卖出以后就会将该商品标识出来,提醒顾客该商品已销售完毕。闲鱼显示卖掉了标志是无法进行设置的,要真实出并且买家付款后才自然生成。闲鱼是阿里巴巴集团旗下的一款闲置交易平台App,由淘宝...

闽政通身份证认证失败

闽政通身份证认证失败的原因:1、身份证验证失败可能是由于您近期办理户籍变迁或者您是军人和非大陆居民导致的,您的信息可能还没有在公安部门及时更新。2、认证一般有两种认证途径:银行卡认证和身份证认证,银行...