文档章节

php安装扩展

TopPGF
 TopPGF
发布于 2016/04/16 18:01
字数 676
阅读 20
收藏 0

码上生花,ECharts 作品展示赛正式启动!>>>

安装php扩展, 大的方面还可以分为两种方式:

  • 方式1. 将扩展编译到php

  • 方式2. 将扩展单独编译成动态连接库so文件

方式1的优点是运行速度快,但是为了一个扩展需要重新安装整个php;

方式2灵活,但是运行速度稍慢. windows平台下的php程序员大多只熟悉方式2,因为方式2是windows下安装Php扩展的唯一方式.

方式1. 将扩展编译到php

如果之前安装了php, 但是没有删除php源码目录,重新进入该目录, 那么此时重新编译运行将采用增量方式

./configure --prefix=/my/php --with-mysql
make
make install

有人质疑: 我安装mysql sdk,./configure命令一个–with-mysql就知道我安装的目录,还是有点神奇,难道他全硬盘搜索.h文件? 不是, 如果你用yum方式安装sdk,那么LD_LIBRARY_PATH系统变量就指示了该sdk相关信息 ,如果你使用源码(tar)安装mysql sdk,你的–with-mysql参数就需要像这样: –with-mysql=/your_mysql_sdk_dir/

方式2. 将扩展单独编译成动态连接库so文件

#以添加 ftp 模块为例子

进入源码目录(ftp扩展的目录其实也是在解压后php源码中的/ext/目录,而其他的一些扩展比如suhosin ,eaccelerato等是有自己单独的源码包的)

cd php-5.2.8/ext/ftp
/usr/local/php/bin/phpize (#寻找你早前已经安装好的php目录,为的是运行phpize)
./configure --with-php-config='/usr/local/php/bin/php-config' (#寻找你早前已经安装好的php目录,为的是调用php-config)
make && make install

(#如果报错,可以先运行make clean,你可能之前添加过其他模块。关于make clean,你可以访问这里了解

如果报错:Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF environment variable is set correctly and then rerun this script.“,需要安装autoconf:

yum install autoconf(RedHat或者CentOS)、apt-get install autoconf(Ubuntu Linux)

编译完成,如果早前编译PHP的时候指定了配置文件的路径,如–with-config-file-path=/usr/local/php /etc ,那么编译完成后生成的so文件会出现在/usr/local/php/lib/php/extensions/no-debug-non-zts- 20060613/目录中,名称为ftp.so 。(#至于是类似目录no-debug-non-zts-20060613还是类似目录no-debug-zts-20060613,也是取决于当初编译PHP时候的编译设置,请自行区分)

#编辑 php.ini文件,指定PHP到哪个目次读模块

vi /usr/local/php/etc/php.ini    (#php.ini文件的目录,取决于当初编译PHP时候的编译设置,请自行区分)

#添加模块:

[ftp]
extension = "ftp.so"

#然后重启apache

#最后查看phpinfo()是否已经载入ftp


本文转载自:http://aiwei.us/5448.html

TopPGF
粉丝 0
博文 5
码字总数 755
作品 0
深圳
私信 提问
加载中
请先登录后再评论。
linux下用phpize给PHP动态添加扩展

phpize简介 phpize 是属于 php-devel 中的东西,主要是设定 php 外挂模块的一些设定 所以安装 php-devel 相关套件就会有 phpize 可以使用 (档案预设存放于 /usr/bin/phpize ) phpize 命令是用...

Junn
2013/09/02
1W
0
【php安全】eavl函数禁用适用于 php7.* php5系列

php5.4 安装扩展demo php安装suhosin扩展 php版本与suhosin版本: suhosin-0.9.38 支持到php 5.4 php5.4 5.5 5.6 需安装 https://github.com/sektioneins/suhosin 官方的快速入门 yum安装的p...

osc_6nds72mv
04/16
4
0
Mac homebrew-1.5以后安装php扩展的方法

一、以前Mac安装php及php扩展的方式 用Mac的童鞋都知道,我们以前都是用brew install php70,brew install php71 这样来安装php的,用brew install php70-xdebug,brew install php71-redis等...

osc_k7wip3sn
2018/08/08
2
0
php添加pcntl扩展

安装一些php扩展,参考php手册即可,下面对需要说明的部分进行补充,以安装php扩展pcntl为例。 #查看当前php版本123456deMacBook-Pro:~ admin$ php -vPHP 5.5.14 (cli) (built: Sep 9 2014 ...

白狼栈
2016/03/07
2K
0
centos7安装PHP7的redis扩展

前言: 在本篇博客中,我将给大家介绍如何在Centos7上安装PHP-Redis扩展,关于如何在Centos上安装redis的,可以参考另外一篇博客:Centos7安装redis 想要在php中操作redis,那就必须安装php...

osc_bmsig0s5
2018/05/06
3
0

没有更多内容

加载失败,请刷新页面

加载更多

Synchronized底层实现

https://blog.csdn.net/qq_35190492/article/details/106180781

JaneRoad
今天
18
0
解决okhttp无法重用连接的问题

解决okhttp无法重用连接的问题 最近在一个程序中使用okhttp调用http接口。开始时一切正常,但是测试运行一段时间后,okhttp就会报告recv失败。同时在调用端机器上,netstat显示很多套接字是T...

tommwq
今天
17
0
入坑Linux-day15(使用DHCP动态管理主机地址)

一、动态主机配置协议(DHCP) #DHCP是一种基于UDP协议且仅限于在局域网内部使用的网路协议,主要用于大型的局域网环境或者存在较多移动办公设备的局域网环境中,其主要用途是为局域网内部的...

宁生写你
今天
8
0
js canvas 旋转90度的整数倍

为了避免出现黑框 效果如下 根据不同的方向,设置宽高和画笔位置等 <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"/> <title>Title</title> <style> .img ......

阿豪boy
今天
16
0
如何生成随机的字母数字字符串? - How to generate a random alpha-numeric string?

问题: I've been looking for a simple Java algorithm to generate a pseudo-random alpha-numeric string. 我一直在寻找一种简单的 Java算法来生成伪随机的字母数字字符串。 In my situat......

技术盛宴
今天
19
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部