网站建设资讯

NEWS

网站建设资讯

php7常用数据库扩展 php数据库扩展有哪些

PHP7安装intl扩展和linux安装icu

一 PHP intl 是国际化扩展,是ICU 库的一个包装器。所以在安装PHP intl扩展前要先安装ICU库,安装ICU库的具体步骤::

目前创新互联建站已为近1000家的企业提供了网站建设、域名、雅安服务器托管、网站托管维护、企业网站设计、德宏州网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

二 安装intl扩展

1:进入php7.2.5源码:

2:运行:phpize ,找不到命令时,将路径补全:/usr/local/php7/bin/phpize(是php的安装路径),出现如下:

Configuring for:

PHP Api Version: 20100412

Zend Module Api No: 20100525

Zend Extension Api No: 220100525

3:运行配置

./configure --enable-intl --with-icu-dir=/usr/local/icu/ --with-php-config=/usr/local/php7/bin/php-config

注:前面路径为icu的安装路径,后面路径为php的安装路径。

4:编译扩展:make

5:复制扩展到目标文件夹

cp /user/local/php/php7.2.5/ext/intl/modules/intl.so /user/local/php7/lib/php/extensions/no-debug-non-zts-20170718

注意:也可以find / -name intl.so 查找。

6:设置扩展加入配置文件中:

[intl]

extension_dir = "/usr/local/php7/lib/php/extensions/no-debug-non-zts-20170718/"

extension=intl.so

大坑:::采用phpinfo()时,无法找到配置的intl扩展,说明配置没有生效。。。。。。

原因:在编译php时没有 --with-config-file-path=PATH 指定php.ini路径,默认的路径为/usr/local/php7/lib,只需要将php.ini放入这个默认的路径即可。你也可以安装配置php时加入,如下:

./configure --prefix=/usr/local/php7 --with-config-file-path=/usr/local/php7/etc --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-xmlrpc --with-xsl --with-zlib --enable-fpm --enable-bcmath -enable-inline-optimization --enable-gd-native-ttf --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-xml --enable-zip --enable-pcntl --with-curl --with-fpm-user=nginx --enable-ftp --enable-session --enable-xml --with-apxs2=/usr/bin/apxs

访问:index.php中phpinfo()文件。

win10 php7 怎么弄mysql扩展

非常遗憾的告诉你,php7不支持MySQL扩展了,只有使用mysqli和pdo扩展,PHP.INI中取消下面两行前面的分号:

extension=php_mysqli.dll

extension=php_pdo_mysql.dll

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扩展目录

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

5,编辑php.ini文件,把mysql.so拷贝到php.ini的extension_dir中,然后在php.ini中加入extension=mysql.so

6,重启php

mysql_select_db被废除后在php7用什么?

不仅仅是mysql_select_db,整个mysql扩展都被废除了

推荐使用mysqli扩展或PDO扩展操作数据库。

mysqli和mysql比较相似,改以前的源码比较方便。

PDO可以支持几乎所有主流数据库,如果你只是用mysql数据库,那用mysqli还是用PDO都可以。


文章标题:php7常用数据库扩展 php数据库扩展有哪些
文章位置:http://cdweb.net/article/hijshc.html