搜索
首页后端开发PHP7PHP7连接数据库的方法有哪些

本篇文章给大家介绍一下PHP7连接数据库的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

PHP7连接数据库的方法有哪些

使用原生PHP来连接MySQL的方法有 MySQL库、MySQLi库以及PDO,由于PHP 7已经废除 MySQL库,所以建议使用MySQLi和PDO。

连接 MySQLi有两种风格:

  • 面向对象风格(推荐)

  • 过程化风格

面向对象风格:

<?php
$mysqli = new mysqli(&#39;localhost&#39;, &#39;root&#39;, &#39;123456&#39;, &#39;test_laravel&#39;);
if ($mysqli->connect_error) {
   die(&#39;Connect Error (&#39; . $mysqli->connect_errno . &#39;) &#39; . $mysqli->connect_error);
}
$result = $mysqli->query(&#39;select * from articles&#39;);
$row = $result->fetch_array(MYSQLI_ASSOC);
print_r($row);
// 关闭mysql连接
$mysqli->close();

运行:

Array
(
    [id] => 1
    [title] => My new title
    [body] => First Body
    [created_at] => 2017-05-22 11:10:20
    [updated_at] => 2017-05-22 11:30:58
    [published_at] => 2017-05-22 11:10:00
    [excerpt] =>
)

fetch_array方法如果不带参数的话,则默认是MYSQLI _BOTH,输出是这样的:

(
[0] => 1
[id] => 1
[1] => My new title
 [title] => My new title
[2] => First Body
[body] => First Body
[3] => 2017-05-22 11:10:20
[created_at] => 2017-05-22 11:10:20
[4] => 2017-05-22 11:30:58
[updated_at] => 2017-05-22 11:30:58
[5] => 2017-05-22 11:10:00
[published_at] => 2017-05-22 11:10:00
[6] =>
 [excerpt] =>
)

也可以选择MYSQLI _NUM

Array
(
    [0] => 1
    [1] => My new title
    [2] => First Body
    [3] => 2017-05-22 11:10:20
    [4] => 2017-05-22 11:30:58
    [5] => 2017-05-22 11:10:00
    [6] =>
)

一般来说,选择MySQLI _ASSOC

面向过程化风格:

<?php
$mysqli = mysqli_connect(&#39;localhost&#39;, &#39;root&#39;, &#39;123456&#39;, &#39;test_laravel&#39;);
if (mysqli_connect_error()) {
    die(&#39;Connect Error (&#39; . $mysqli->connect_errno . &#39;) &#39; . $mysqli->connect_error);
}
$result = mysqli_query($mysqli, &#39;select * from articles&#39;);
$row = mysqli_fetch_array($result, MYSQLI_ASSOC);
print_r($row);
// 关闭mysql连接
mysqli_close($mysqli);

运行和上面一致。

使用PDO连接mysql:

<?php

try {
    $PDO = new PDO(&#39;mysql:host=localhost;dbname=test_laravel&#39;, &#39;root&#39;, &#39;123456&#39;);
    $result = $PDO->query(&#39;select * from articles&#39;);
    $row = $result->fetch(PDO::FETCH_ASSOC);
    print_r($row);

    // 关闭mysqi连接
    $PDO = null;
} catch (PDOException $e) {
    die(&#39;Connection failed: &#39; . $e->getMessage());
}

PDO的fetch方法不带参数的话,默认是:PDO::FETCH_BOTH,也可以PDO::FETCH_NUM和PDO::FETCH_ASSOC等,一般来说选择PDO::FETCH_ASSOC即可。

总结:使用PDO或者是MySQLi都是可以的,但网上更推荐使用PDO来连接数据库,这是因为PDO支持12种不同的数据库驱动程序,而MySQLi只能支持MySQL,另外PDO的性能也更高。

推荐学习:php视频教程

以上是PHP7连接数据库的方法有哪些的详细内容。更多信息请关注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

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

热工具

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

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

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

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

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

MinGW - 适用于 Windows 的极简 GNU

MinGW - 适用于 Windows 的极简 GNU

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