PHP MySQL 数据库:连接 MySQL 服务器
PHP连接数据库
使用 PHP 操作 MySQL数据库是进行 Web 开发的必然要求之一,PHP 中提供了完整的操作MySQL数据库的函数,这些函数包括了从连接数据库、执行 SQL语句、处理数据结果集到关闭数据库的方方面面。通过这些函数,使基于MySQL 数据库的 Web开发高效而简单。通常 PHP 访问 MySQL数据库的步骤如下图所示。

在此之前,我们需要确保开启了PHP中的mysqli 扩展。以 Windows 系统为例,开启 mysqli 扩展就是将php.ini配置文件中extension=mysqli(php7)或extension=php_mysqli.dll(php5)一项的注释去掉即可。
在 PHP 早期版本中我们使用 MySQL 扩展。但该扩展在 2012 年开始不建议使用。
开启成功后可以使用 phpinfo()函数查看,示例代码如下:
<?php
    phpinfo();
?>
在输出的界面中搜索 mysqli,出现如下界面则表示开启成功。

连接MySQL数据库
前面我们成功开启了 PHP中的 mysqli扩展,使用扩展中的 mysqli_connect()函数就可以实现MySQL数据库的连接,函数语法格式如下:
<?php
    $con=mysqli_connect("localhost","wrong_user","my_password","my_db");
    // 检查连接
    if (!$con)
    {
        die("连接错误: " . mysqli_connect_error());
    }
?>
定义和用法
mysqli_connect()函数打开一个到 MySQL 服务器的新的连接。
语法
mysqli_connect(host,username,password,dbname,port,socket);
| 参数 | 描述 | 
|---|---|
| host | 可选。规定主机名或 IP 地址。 | 
| username | 可选。规定 MySQL 用户名。 | 
| password | 可选。规定 MySQL 密码。 | 
| dbname | 可选。规定默认使用的数据库。 | 
| port | 可选。规定尝试连接到 MySQL 服务器的端口号。 | 
| socket | 可选。规定 socket 或要使用的已命名 pipe。 | 
另外需要注意的是,mysqli_connect() 函数是mysqli::__construct() 函数的别名,所有使用对象 mysqli()也可以实现连接数据库。
示例
下面通过一个简单的代码实现连接数据库。
1. 面向过程风格的写法
<?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);
?>
2. 面向对象风格的写法
<?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);
?>
                        
                        
                        
                    
          
 PHP 社区 Wiki
    
            
            
                关于 LearnKu
              
                    
                    
                    
 
推荐文章: