Rumah  >  Artikel  >  pembangunan bahagian belakang  >  PHP7连接数据库的方法有哪些

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

醉折花枝作酒筹
醉折花枝作酒筹ke hadapan
2021-06-04 09:17:022451semak imbas

本篇文章给大家介绍一下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视频教程

Atas ialah kandungan terperinci PHP7连接数据库的方法有哪些. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:csdn.net. Jika ada pelanggaran, sila hubungi admin@php.cn Padam