liunx系统

1. /usr/local/php/bin/php-config  

php 配置文件位置 [ php-config是一个脚本文件,用于获取所安装的php配置的信息 ]

  在编译扩展时,如果安装有多个 PHP 版本,可以在配置时用 --with-php-config 选项来指定使用哪一个版本编译,该选项指定了相对应的 php-config 脚本的路径    

2. 下载php 扩展包,进入扩展包目录

3. 执行 /usr/local/php/bin/phpize  # 这个phpize 根据自己的目录

4. 执行后会在扩展包的目录里生成 configure  文件,以及 模块.so 

大体思路:要生成模块需要用到php的源码包才行。通过源码包中提供的phpize文件(一个专门挂接php扩展的工具),phpize的规则:去哪个目录下运行phpize文件,那么就会在该目录下生成一个configure文件

5. 然后 ./configure --with-php-config=/usr&/local/php/bin/php-config

--with-php-config  指定php 安装配置文件,打开对php 的支持

如果需要用到客户端:例如安装mysql 扩展 必须加上"--with-mysql=mysql客户端的路径(mysql安装路径)" 

注意:

--prefix=安装目录

--with-使用包名称[=包目录]

--enable-需要激活的功能

 

6. 执行后生成配置文件: make 配置文件

7. 编译安装 : make && make install

编译安装完成之后:会自动把 扩展模块名称.so 放到了默认的php扩展目录下(可以进入php扩展目录查看)

#  php 扩展文件地址 一般在php安装目录里的 ext 或者 extensions 目录

8. 修改php.ini 文件  去掉;extension=扩展模块名称.so前面的分号。如果没有这句,需要自行添加;

如果没有找 extension 查找[Mcrypt]这样的一个字头,在下面添加如下代码 

[扩展模块名称]  # 这个可写可不写,本人做时 添加上了,去掉没有测试过(感觉像分组的意思)

extension=/usr/local/php/lib/php/extensions/no-debug-zts-20090626/扩展模块名称.so   #安装时生成的模块目录绝对路径

9. 重启服务 :

nginx  服务
service nginx restart
/etc/init.d/php-fpm  restart
   apache 服务
     service httpd restart

     或者apache没有安装成服务,则进入apache_home执行  bin/apachectl -k restart

 

window 系统

1. 下载支持当前php 版本的php扩展模块 https://pecl.php.net/ 

2. 解压文件找到 扩展模块名称.dll 文件复制放在php扩展目录 ,一般为php安装目录的 ext 文件夹

3.修改php.ini 文件 中查找 extension , 添加 extension=扩展模块名称.dll

4. 重启 apache 服务 

如果是是wamp 服务,在php->php extensions->扩展模块名称 查看是否勾选,如果勾选安装成功;

 

测试php引擎是否成功加载该扩展    

   编写文件phpinfo.php,内容是:
  

<?php 
     ehco phpinfo(); 
     ?>