PHP代码信息

运行结果
教程手册
代码仓库
点击编辑器上方的运行按钮,会在此处显示运行结果。
用户最新分享的代码
指定日期时间段过滤不可用时间段 发布于:2020-07-31 00:37 PHP常量 发布于:2020-07-30 02:06 PHP正则表达式零宽度 发布于:2020-07-29 18:36 PHP正则表达式 发布于:2020-07-29 18:27 pengzhile md4 亿次 发布于:2020-07-29 17:47 PHP字符串 发布于:2020-07-28 19:57 php数组 发布于:2020-07-30 02:56 php list 发布于:2020-07-30 10:59 php数据类型 发布于:2020-07-28 16:51 global 发布于:2020-07-28 15:10 php变量 发布于:2020-07-28 18:12 echo语句 发布于:2020-07-28 10:02 变量实例3 发布于:2020-07-28 09:52 变量实例2 发布于:2020-07-28 09:47 教程-变量实例 发布于:2020-07-28 09:34 小程序项目定价估算方案 发布于:2020-07-26 19:06 测试代码00 发布于:2020-07-17 18:50 将ASCII码和GB2312码混合字符串中的全角大... 发布于:2020-07-09 09:30 算法-排序-冒泡排序 发布于:2020-07-04 12:20 footer.php 发布于:2020-07-01 10:00 header.php 发布于:2020-07-01 10:01 计算复利。 发布于:2020-06-28 09:14 单例模式(一个类只有一个对象),并封装数据库连接 发布于:2020-06-23 08:34 观看教学视频练习 发布于:2020-06-23 08:40 mongodb aggregate sample ... 发布于:2020-06-19 23:34 实训60 index.php文件 发布于:2020-06-18 13:07 1 4-17 phc 发布于:2020-06-17 11:27 111111 发布于:2020-06-16 18:34 index.php 发布于:2020-06-16 15:57 php测试 发布于:2020-06-15 16:10 is set 发布于:2020-06-06 15:44 百度面试题 PHP重新排列数组的数,使得负数都排在... 发布于:2020-06-04 23:16 测试测试一下 发布于:2020-04-21 16:41 ctf payload 第九题 反序列化 do y... 发布于:2020-03-26 16:24 网页数据处理 发布于:2020-03-25 08:30 多号计算器 发布于:2020-03-24 17:26 745649653121 发布于:2020-03-23 23:04 获取参数编码后的字符串 发布于:2020-03-16 13:38 纯属上班无聊,敲敲代码 发布于:2020-03-13 17:13 利用内置函数去除数组中的指定键名 发布于:2020-03-11 17:50 3、插入排序 发布于:2020-03-03 16:39 3、插入排序 发布于:2020-03-03 16:39 php抽奖概率 发布于:2020-03-02 22:41 php抽奖概率 发布于:2020-02-24 21:11 aaaaaaaaaaaa 发布于:2020-02-22 19:21 3、插入排序 发布于:2020-01-17 15:14 2、选择排序 发布于:2020-01-17 14:25 1、冒泡算法 发布于:2020-01-17 14:21 全局和局部变量的使用 发布于:2020-01-16 12:56 55555555555555555555 发布于:2020-01-08 21:58 [更多]
显示目录

连接 MySQL

PHP 连接 MySQL

在 PHP 使用 MySQL 数据库前,你需要先将它们连接。


PHP 5 及以上版本建议使用以下方式连接 MySQL :

  • MySQLi extension ("i" 意为 improved)
  • PDO (PHP Data Objects)

在 PHP 早起版本中我们使用 MySQL 扩展。但该扩展在 2012 年开始不建议使用。


我是该用 MySQLi ,还是 PDO?

如果你需要一个简短的回答,即 "你习惯哪个就用哪个"。

MySQLi 和 PDO 有它们自己的优势:

PDO 应用在 12 种不同数据库中, MySQLi 只针对 MySQL 数据库。

所以,如果你的项目需要在多种数据库中切换,建议使用 PDO ,这样你只需要修改连接字符串和部分查询语句即可。使用 MySQLi, 如果不同数据库,你需要重新所有代码,包括查询。

两者都是面向对象, 但 MySQLi 还提供了 API 接口。

两者都支持预处理语句。 预处理语句可以防止 SQL 注入,对于 web 项目的安全性是非常重要的。


MySQLi 和 PDO 连接 MySQL 实例

在本章节及接下来的章节中,我们会使用以下三种方式来演示 PHP 操作 MySQL:

  • MySQLi (面向对象)
  • MySQLi (面向过程)
  • PDO

MySQLi Installation

Linux 和 Windows: 在 php5 mysql 包安装时 MySQLi 扩展多事情况下是自动安装的。

安装详细信息,请查看: http://php.net/manual/en/mysqli.installation.php


PDO 安装

For 安装详细信息,请查看: http://php.net/manual/en/pdo.installation.php


连接 MySQL

在我们访问 MySQL 数据库前,我们需要先连接到数据库服务器:

实例 (MySQLi - 面向对象)

<?php  
$servername = "localhost";  
$username = "username";  
$password = "password";  

// 创建连接  
$conn = new mysqli($servername, $username, $password);  

// 检测连接  
if ($conn->connect\_error) {  
    die("Connection failed: " . $conn->connect\_error);  
}  
echo "Connected successfully";  
?>

注意在以上面向对象的实例中 $connect_error 是在 PHP 5.2.9 和 5.3.0 中添加的。如果你需要兼容更早版本 请使用以下代码替换:

// 检测连接  
if (mysqli\_connect\_error()) {  
    die("Database connection failed: " . mysqli\_connect\_error());  
}

实例 (MySQLi - 面向过程)

<?php  
$servername = "localhost";  
$username = "username";  
$password = "password";  

// 创建连接  
$conn = mysqli\_connect($servername, $username, $password);  

// 检测连接  
if (!$conn) {  
    die("Connection failed: " . mysqli\_connect\_error());  
}  
echo "Connected successfully";  
?>

实例 (PDO)

<?php  
$servername = "localhost";  
$username = "username";  
$password = "password";  

try {  
    $conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password);  
    echo "Connected successfully";  
    }  
catch(PDOException $e)  
    {  
    echo $e->getMessage();  
    }  
?>
注意在以上 PDO 实例中我们已经指定了数据库 (myDB)。PDO 在连接过程需要设置数据库名。如果没有指定,则会抛出异常。

关闭连接

连接在脚本执行完后会自动关闭。你也可以使用以下代码来关闭连接:

实例 (MySQLi - 面向对象)

$conn->close();

实例 (MySQLi - 面向过程)

mysqli_close($conn);

实例 (PDO)

$conn = null;

现在,你已经知道如何将 MySQL 数据库连接到 PHP 了,接下来,你应该了解 PHP 是如何创建数据库的!

由JSRUN为你提供的PHP在线工具
        JSRUN提供的PHP在线运行,PHP 在线编译工具,基于linux操作系统环境提供线上编译和线上运行,具有运行快速,运行结果与常用开发、生产环境保持一致的特点。

title

使用此草稿 删除草稿