PHP中怎样去连接MySQL数据库?

PHP中怎样去连接MySQL数据库?,第1张

概述PHP中怎样去连接MySQL数据库? 在之前的文章中给大家带来了《怎样使用PHP中的spl_autoload_register() 和 __autoload() 函数?》,其中详细的介绍了PHP中这两种函数的用法,本篇我们来看一下PHP中怎样去连接数据库。希望对大家有帮助!

在我们的日常开发中,数据库是一个网站必不可少的一部分,PHP作为一种网页编程技术,也必不可少的要与数据库打交道。但是数据库的种类很多,哪一种数据库是最适合PHP的?

通过PHP可以连接和 *** 作数据库,PHP可以连接的数据库种类较多,其中MysqL数据库与PHP兼容性好,搭配使用也是最广泛的,MysqL数据库是跟PHP配套使用最流行的开放数据库系统,那接下来我们一起来学习看看什么是MysqL数据库以及PHP应该怎样连接它。

什么是MysqL数据库

MysqL 是一款安全、跨平台、高效的,并与多种编程语言紧密结合的数据库系统。MysqL 是一种在 Web 上使用在服务器上运行的数据库系统。其体积小、速度快、总体拥有成本低,MysqL 数据库可以称得上是目前运行速度最快的 sql 语言数据库之一。除了具有许多其他数据库所不具备的功能外,MysqL 数据库还是一种完全免费的产品,用户可以直接通过网络下载 MysqL 数据库,而不必支付任何费用。大家感兴趣的话也可以点击《MySQL最新手册教程》进行学习。

MysqL数据库的特点

功能强大,支持跨平台MysqL 适用于不同的应用场合,MysqL 支持至少 20 种以上的开发平台,这使得在任何平台下编写的程序都可以进行移植,而不需要对程序做任何的修改。

运行速度快,高速是 MysqL 的显著特性。在 MysqL 中,能够极快地实现连接;sql 函数使用高度优化的类库实现,运行速度极快。

支持面向对象,PHP 支持混合编程方式。编程方式可分为纯粹面向对象、纯粹面向过程、面句对象与面向过程混合 3 种方式。

安全性高,灵活和安全的权限与密码系统。

成本低,MysqL 数据库是一种完全免费的产品,用户可以直接通过网络下载。

支持各种开发语言,MysqL 为各种流行的程序设计语言提供支持,为它们提供了很多的 API 函数。

数据库存储容量大,支持强大的内置函数,PHP 中提供了大量内置函数,几乎涵盖了 Web 应用开发中的所有功能。

数据库的应用

数据库是一种专门用来管理数据资源的系统,数据其实就是计算机每天打交道需要处理的对象,无论是文字、图形还是声音等等这些都是数据的一种形式。在文件式管理方法中,有着诸如不便移植、浪费储存空间等问题,但是数据库更够更好的解决这些问题。

数据库立足于数据本身的管理,他将所有的数据保存到数据库中,进行有序的组织,并且借助数据库管理系统能够更方便的使用数据库中的数据。可以理解为数据库就是经过了计算机整理后的数据,管理这些数据的软件就是数据管理系统。一个数据库系统是由数据库和数据管理系统两个部分组成的。

在同一个 MysqL 数据库服务器中可以创建多个数据库,如果把每个数据库看成是一个“仓库”,那么网站中的内容数据就存储在这个仓库中。而对数据库中数据的存取及维护等,都是通过数据库管理系统软件进行管理的。

连接MysqL数据库

使用 PHP *** 作 MysqL 数据库是进行 Web 开发的必然要求之一,PHP 中提供了完整的 *** 作 MysqL 数据库的函数,这些函数包括了从连接数据库、执行 sql 语句、处理数据结果集到关闭数据库的方方面面。通过这些函数,使基于 MysqL 数据库的 Web 开发高效而简单。那接下来我们就来看一下PHP怎样连接到MysqL数据库。

在连接到数据库之前,我们要确保开启了 PHP 中的 MysqLi 扩展。开启 MysqLi 扩展就是将 PHP.ini 配置文件中extension=MysqLi这一项注释去掉就行了。我们可以通过 PHPinfo() 函数查看来查看MysqLi 扩展是否开启成功:

<?PHPPHPinfo();?>

在输出结果中出现:

就表示已经开启PHP中的 MysqLi 扩展,在我们确认已经成功开启后,就可以通过扩展中的MysqLi_connect() 函数来进行PHP与MysqL数据库的连接。

其中MysqLi_connect() 函数的语法格式如下:

MysqLi_connect(    [string $host = ini_get("MysqLi.default_host")    [, string $username = ini_get("MysqLi.default_user")    [, string $password = ini_get("MysqLi.default_pw")    [, string $dbname = ""    [, int $port = ini_get("MysqLi.default_port")    [, string $socket = ini_get("MysqLi.default_socket")]]]]]] )

其中需要注意的是:

$host 是可选参数,要连接的服务器;

$username 是可选参数,登录所使用的 MysqL 用户名;

$password 是可选参数,登录所用的密码;

$dbname 是可选参数,执行查询时使用的默认数据库;

$port 是可选参数,指定连接到 MysqL 服务器的端口号;

$socket 是可选参数,指定 socket 或要使用的已命名 pipe;

MysqLi_connect()函数是 MysqLi::__construct() 函数的别名,所有使用对象 MysqLi() 也可以实现连接数据库。

接下来我们通过示例来看一下应该怎样连接,示例如下:

<?PHP    $host     = 'localhost';    $username = 'root';    $password = 'root';    $dbname   = 'test';    $port     = '3306';    $link     = @MysqLi_connect($host,$username,$password,$dbname,$port);   // 连接到数据库    if($link){        MysqLi_set_charset($link,'UTF-8');      // 设置数据库字符集        $sql    = 'select * from user';         // sql 语句        $result = MysqLi_query($link, $sql);    // 执行 sql 语句,并返回结果        $data   = MysqLi_fetch_all($result);    // 从结果集中获取所有数据        MysqLi_close($link);    }else{        dIE('数据库连接失败!');    }    echo '<pre>';    print_r($data);?>

输出结果会获取数据库中你所设置的字符集,若是没有连接上两种输出结果如下所示:

上述示例是面向过程的一种方法,下面看一下面向对象的方法:

<?PHP    $host     = 'localhost';    $username = 'root';    $password = 'root';    $dbname   = 'test';    $MysqL    = new MysqLi($host, $username, $password, $dbname);    if($MysqL -> connect_errno){        dIE('数据库连接失败:'.$MysqL->connect_errno);    }else{        $MysqL -> set_charset('UTF-8'); //  设置数据库字符集        $sql = 'select * from user';         // sql 语句        $result = $MysqL -> query($sql);        $data = $result -> fetch_all();        $MysqL -> close();    }    echo '<pre>';    print_r($data);?>

输出结果与上述示例中的输出结果一致。

想要关闭连接的话,一般情况下,连接会在脚本运行完毕后自动关闭,当然也可以使用代码来关闭连接,示例如下:

$conn->close();

上述是面向对象方法时的关闭连接代码,下面看一下面向过程方法的代码,示例如下:

MysqLi_close($conn);

大家如果感兴趣的话,可以点击《PHP视频教程》进行更多关于PHP知识的学习。 总结

以上是内存溢出为你收集整理的PHP中怎样去连接MySQL数据库?全部内容,希望文章能够帮你解决PHP中怎样去连接MySQL数据库?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1007747.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存