PHP7连接mysql数据库方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP7连接mysql数据库方法相关的知识,希望对你有一定的参考价值。

参考技术A 1、用 mysql_connect 的方法,php7会报致命错误

$conn= mysql_connect('localhost','xueyanxiang','xueyanxiang');

Fatal error : Uncaught Error: Call to undefined function mysql_connect() in /Users/xueyanxiang/work/test/xue.php:31 Stack trace: #0 /Users/xueyanxiang/work/test/xue.php(119): xue->run() #1 main thrown in  /Users/xueyanxiang/work/test/xue.php  on line  31

原因是:

PHP5中使用mysql_connect()函数进行连接,但实际上,PHP5.5开始,MySQL就不推荐使用了,属于废弃函数

PHP7中貌似已经彻底不支持了,根据官网说明,取而代之的是如下两个:

本扩展自 PHP 5.5.0 起已废弃,并在将来会被移除。应使用 MySQLi 或 PDO_MySQL 扩展来替换之。参见 MySQL:选择

API 指南以及相关 FAQ 以获取更多信息。用以替代本函数的有:

mysqli_connect()

PDO::__construct()

使用时,不要在使用mysql_connect了,可以换用mysqli_connect(),用法基本类似吧,据说是面向对象的库。

php.ini中,也只有extension=php_mysqli.dll,而不再有extension=php_mysql.dll这个拓展了。

2、可以使用mysqli,对象化,方法名与被废弃的类似

$conn= mysqli_connect('localhost','xueyanxiang','xueyanxiang');

3、PDO工具,推荐使用

$dbh= "mysql:host=localhost;dbname=test";

$db= new PDO($dbh,'xueyanxiang','xueyanxiang');

$objQuery= $db->query("select * from user;");

$res= $objQuery->fetchAll(PDO::FETCH_ASSOC);

不填写参数的话,默认是关联和索引都有,如下图

php连接 mysql 数据库

php 连接数据库 一般是用面向对象的方法,需要先创建一个对象,即造一个连接对象,然后再写sql语句,(增改查删),最后执行sql语句

 

其中在创建连接对象时 我们用到的是MySQLI  是不区分大小写的, 这里用到的是mysqli,意思就是mysql的扩展,既可以通过面向过程的方式也可以通过面向对象的方式与数据库进行交互,唯一不同的是调用函数(对象方法)的方式不一样。

 

在创建连接对象后 需要先看一下连接是否成功 用if语句测试 mysqli_connect_error()就可以了  若显示false 则连接不成功

<?php

//先创建一个对象,即造一个连接对象

$db=new mysqli("IP地址域名","用户名","密码","数据库名");

// 写sql 语句

$sql="insert into  info values(‘p003‘,‘张三‘,‘1‘,‘n001‘)";

//执行sql语句

$result=$db->query($sql);

//可以判断一下$result  增改删 的$result 返回值是ture 或者false
/* if($result)
{
    echo "执行成功";
}
else
{
      echo"执行失败";
}*/

?>

上面是关于连接MYSQL 数据库中的增改删语句,相对来说比较简单,也比较单一,

下面是关于连接MYSQL 数据库中的查 select 语句, 由于最后的返回值是一个集对象,为了方便清晰的看到结果 我们用到了fetch_all(),fetch_row(); fetch_object();

fetch_assoc(); fetch_array()等比较常见函数,后面会有介绍,而且输出的方式都是不同的

<?php
//创建对象

$db=new mysqli("","","","");

//判断是否出错的方法 
/*if(mysqli_connect_errtor())
{
     echo"连接失败";
     exit;
}

或者

mysqli_connect_error()?die("连接失败"):"";*/

//写SQL语句

$sql="select * from info";

//执行SQL语句返回结果集对象

$result=$db->query($sql);

//从结果集中读取数据,返回数组

$attr=$result->fetch_all() //读取所有数据,返回索引二维数组

$attr=$result->fetch_array() //读取当前指针指向的数据,返回索引关联都存在的数组

$attr=$result->fetch_assoc() //返回关联数组

$attr=$result->fetch_row() //返回索引数组

$attr=$result->fetch_object()  //返回对象

?>

 

以上是关于PHP7连接mysql数据库方法的主要内容,如果未能解决你的问题,请参考以下文章

MySQL1连接数据库

从PHP5到PHP7的注意事项——PHP7全面删除Mysql扩展支持

最近在学习php,其中使用了MYSQLi扩展,注意是MYSQLi不是MYSQL(因PHP7已经不支持MYSQL扩展了)。

005-LNMP环境连接Mysql测试

LAMP - CentOS7+Apache2.4+MySQL8+PHP7.3环境搭建

总结windows下单独配置php7,mysql8 ,nginx