PHP Fatal error: Call to undefined function mysql_connect() 错误解释

我使用的是5.6.11版本的php

刚开始以为编译参数加了--with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd,就可以不能安装mysql了。

但是使用了mysq_connect()函数后发现php无法解析,在apache的日志当中出现下面这个提示,刚开始想不通。

PHP Fatal error: Call to undefined function mysql_connect() 

因为原先的mysql.api已经在php5.5开始被移除,而之后的php 自带的mysqli只支持部分部分函数。

具体可以参考http://cn2.php.net/manual/zh/set.mysqlinfo.php

如果真的不想安装mysql,用以替代本函数的有:

http://cn2.php.net/manual/zh/function.mysql-connect.php

------------------------------------------------------------------

首先纠正一个问题,

5.x开始,PHP连接MYSQL无论使用哪种方式都是使用的mysqlnd驱动(当然是在你安装好的时候)。包括mysql_*PDO_MYSQLMYSQLi

在编译安装PHP的时候,需要指定开启以下扩展
--with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd 而不再是 --with-mysqli=/usr/local/mysql

  • PHP7 正式移除了 mysql 扩展

mysqlndmysql mysqli pdo_mysql关系打比方说 mysqlnd金属,而mysql mysqli pdo_mysql只是金属制品而已

使用PDO连接mysql

 
$pdo = new PDO('mysql:host=localhost;dbname=database_name;port=3306','用户名','密码'); $pdo->exec('set names utf8'); $stmt = $pdo->prepare("select * from table where id =:id"); $stmt->bindValue(':id',1,PDO::PARAM_INT); $stmt->execute(); $rows = $stmt->fetchAll(PDO::FETCH_ASSOC); $rows = $pdo->query("select * from table where id = 1")->fetchAll(PDO::FETCH_ASSOC);

转载于:https://www.cnblogs.com/wajika/p/6627140.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值