搜索
首页后端开发PHP7讲解php7连接mysql数据库

讲解php7连接mysql数据库

Feb 25, 2021 am 09:46 AM
mysql数据库php7

讲解php7连接mysql数据库

推荐(免费):PHP7

   PHP 5 的使用者可以使用 mysql extension,mysqli 和 PDO_MYSQL 。PHP 7移除了mysql extension,只剩下后面两种选择.

   这份文档解释了每个API 的术语,帮助我们如何使用API 和了解相关API的信息。

  PHP 提供了三种不同的API去连接mysql数据库。下面的示例代码展示了3种不同连接mysql数据库的方式。

/*
 * mysqli
 * 数据库地址,登陆账号,密码,数据库名称
 */
    $mysqli = new mysqli("localhost", "root", "", "student");
    $sql = "SELECT * FROM tb_user";
    $result = $mysqli->query($sql);
    $row = $result->fetch_assoc(); // 从结果集中取得一行作为关联数组
    echo $row["password"];
    /* free result set */
    $result->free();

    /* close connection */
    $mysqli->close();
    /*
     * 第一个参数是mysql:host,第二是dbname,第三个账户名,第四个密码
     */
    try {
        $pdo = new PDO("mysql:host=localhost;dbname=student", "root", "");
    } catch (PDOException $e) {
        echo 'Connection failed: ' . $e->getMessage();
    }
    $sql = "select * from tb_user";
    echo $sql . "<BR>";
    $pdo->query('set names utf8;');
    $result = $pdo->query($sql);
    $rows = $result->fetchAll();
    foreach ($rows as $row) {
        $username = $row[1];
        $pwd = $row[2];
        echo $username;
    }

我们推荐使用mysqli或者PDO_Mysql拓展,不推荐在新开发中使用老的mysql拓展,因为它在PHP5.5.0中不再使用并且在PHP7.0中被移除。

设置编码很重要,是utf8而不是uft-8

$conn->set_charset("utf8");或者这样也可以$conn->query("set names utf8;");<pre style="font-family: &#39;DejaVu Sans Mono&#39;; font-size: 15pt; background-color: rgb(255, 255, 255);">

概念:

有缓存和没有缓存的查询

查询默认使用有缓存的查询。这意味着查询结果马上从Mysql服务器发送到PHP,然后被保存在php解析器内存中。这允许额外的操作像计算行数,移动或者寻找当前的结果指针。它也允许在同样的连接和结果集上进一步查询。缓存模式不好的一面是大的结果集可能需要很大的内存,这些内存一直占用直到结果集被清除或者被释放,这是在请求结束自动进行的。术语存储结果就是用来表示缓存模式,所有结果集马上被保存。

没有缓存的Mysql查询被执行,马上返回一个资源,数据一直等待mysql服务器被连接获取。这是用了更少的内存在php一方,但这回增加服务器的负载。直到所有的结果集从服务器被取走且没有发送建立在同一个连接上的查询。没有缓存的查询也被称为使用结果。

从这些特性可以看出,缓存查询用在当你只希望得到一个有限的结果集和或者在读取结果集前知道返回结果集的行数。没有缓存的查询模式用在当你要返回大量的数据。

因为默认是缓存查询模式,下面的例子将会验证如何去执行没有缓存的查询API。

<?php
$mysqli  = new mysqli("localhost", "my_user", "my_password", "world");
$uresult = $mysqli->query("SELECT Name FROM City", MYSQLI_USE_RESULT);

if ($uresult) {
   while ($row = $uresult->fetch_assoc()) {
       echo $row['Name'] . PHP_EOL;
   }
}
$uresult->close();
?>

以上是讲解php7连接mysql数据库的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文转载于:CSDN。如有侵权,请联系admin@php.cn删除

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

螳螂BT

螳螂BT

Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

将Eclipse与SAP NetWeaver应用服务器集成。

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

MinGW - 适用于 Windows 的极简 GNU

MinGW - 适用于 Windows 的极简 GNU

这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

安全考试浏览器

安全考试浏览器

Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。