首页 > 编程知识 正文

编译mysql支持php7,php7 mysql8

时间:2023-12-28 11:56:52 阅读:327922 作者:HMOL

本文目录一览:

PHP7连接mysql数据库方法

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);

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

PHP7.0怎么通过打开扩展功能和mysql相连?

第一步:进入php源码中的"ext/mysql"目录下

第二步:在当前目录下运行phpize命令:/usr/local/php524/bin/phpize

phpize的规则:去哪个目录下运行phpize文件,那么就会在该目录下生成一个configure文件。

第三步:运行刚才生成的configure文件

命令: ./configure --with-php-config=/usr/local/php524/bin/php-config --with-mysql=/usr/local/mysql/

这里最关键的是通过--with-mysql参数告诉mysql客户端的位置。这样才能生成mysql.so。

实验的时候,没有加这个参数,结果错误:

./configure --with-php-config=/usr/local/php524/bin/php-config

第四步:编译生成.so文件

第五步:配置php引擎加载该扩展。

补充一下:就是去php.ini文件中修改一下配置,加载mysql.so这个扩展(这个扩展文件要放到php指定的扩展目录下面去)

第六步:测试php引擎是否成功加载该扩展编写文件phpinfo.php,内容是:?php ehco phpinfo(); ?

运行后,可以看到有如下信息显示:mysqlMySQLSupport    enabledActive PersistentLinks     0

Active Links     0

Client API version     5.1.55

MYSQL_MODULE_TYPE     no value

MYSQL_SOCKET     /tmp/mysql.sock

MYSQL_INCLUDE     no value

MYSQL_LIBS     no value

通过这样的方式可以确认,php引擎已经成功加载了mysql.so扩展。

第七步:已经生成的mysql.so。编写php代码测试是否能连接mysql。

一、为什么书中一般是常常是这样的顺序安装。

先安装mysql,然后再安装php,很少看到先安装php,后安装mysql?

这样做。是基于下面原因:安装好mysql后。mysql.so这个模块才能生成。记得一个细节:在安装php的时候,需要提供mysql的路径。由php帮助编译生成mysql.so模块。mysql.so这个模块是在安装好php的时候生成的。

生成这个模块需要用到一个东西:mysql客户端。如果先安装php,后安装mysql。那么无法按照原来的方式(由php帮助生成mysql.so模块)挂接mysql.so。通过实践,发现使用phpize工具生成mysql.so可以解决这个问题。

二、实践生成mysql.so的过程。

大体思路:需要用到php的源码包才行。通过源码包中提供的phpize文件(一个专门挂接php扩展的工具)

如何在PHP7中安装mysql的扩展

你好,

1.去php网站上下载mysql扩展,

2.解压并使用phpize工具初始化,编译:

#解压

tar xzvf mysql-45881bd.tar.gz

#进入mysql扩展目录 from

cd mysql-45881bd/

#使用phpize初始化,我的phpize在/opt/目录

/opt/php/bin/phpize

#编译mysql扩展,使用mysql native driver作为mysql链接库

./configure --with-php-config=/opt/php/bin/php-config --with-mysql=mysqlnd

make make install

3.接下来,我们直接编辑php.ini文件,把mysql.so拷贝到php.ini的extension_dir中,然后在php.ini中加入extension=mysql.so

4.重启php

成功之后,用phpinfo即可看到mysql扩展的信息

如何编译搭建php7+nginx+mysql

在Windows下配置搭建PHP环境的步骤:

一、准备工作-下载所需软件

Apache httpd-2.2.22-win32-x86-openssl-0.9.8t.msi

PHP php-5.3.10-Win32-VC9-x86.zip

MySQL mysql-5.5.20-win32.msi

二、安装软件

1、安装Apache: 双击安装,与安装其他Windows软件没有什么区别,在填Server Infomation时,并没有特殊规定,只要输入的信息符合格式即可。

安装完成之后,在浏览器输入,如果显示It Works!,表示Apache安装成功。

2、安装PHP:将php-5.3.10-Win32-VC9-x86.zip解压到一个目录即可。

3、安装MySQL:双击安装,如果需要更改安装目录,则在Choose Setup Type选择Custom

安装完成后开始配置MySQL,全部保持默认选项即可,但最好把MySQL默认编码改为utf8,在Modify Security Settings选项中设置密码,输入两次密码即可完成,最后点Execute完成配置。

三、整合Apache+PHP+MySQL

Apache : 首先修改Apache的配置文件,让Apache支持解析PHP文件。Apache配置文件在Apache安装目录的conf目录下的httpd.conf。

1. 让Apache可以解析php文件,在配置文件中找到

#LoadModule vhost_alias_module modules/mod_vhost_alias.so

在下一行添加 (绿色的位置是根据PHP的所在目录而定的)

LoadModule php5_module "D:/Develop/PHP/php5apache2_2.dll"PHPIniDir "D:/Develop/PHP"AddType application/x-httpd-php .php .html .htm

2. 在配置文件中找到

DirectoryIndex index.html

改为

DirectoryIndex index.php index.html

3. 修改Apache站点目录,在配置文件中找到(Apache安装的目录不同,显示的值不一样)

DocumentRoot "D:/Develop/Apache2.2/htdocs"

改为

DocumentRoot "D:/Workspace/PHP"

再找到

Directory "D:/Develop/Apache2.2/htdocs"

改为

Directory "D:/Workspace/PHP"

PHP : 把php.ini-development改名为php.ini,作为PHP的配置文件。修改php.ini

1. 设置PHP扩展包的具体目录,找到

; On windows:; extension_dir = "ext"

改为 (值是ext文件夹的目录)

; On windows: extension_dir = "D:/Develop/PHP/ext"

2. 开启相应的库功能,找到需要开启的库的所在行

;extension=php_curl.dll

;extension=php_gd2.dll

;extension=php_mbstring.dll

;extension=php_mysql.dll

;extension=php_xmlrpc.dll

去掉前面的分号(注释),即改为

extension=php_curl.dll

extension=php_gd2.dll

extension=php_mbstring.dll

extension=php_mysql.dll

extension=php_xmlrpc.dll

3. 设置时区,找到

;date.timezone =

改为

date.timezone = Asia/Shanghai

配置完成,检测一下配置是否成功。重启Apache,在站点目录下新建文件index.php,输入内容。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。