文档章节

php安装扩展

TopPGF
 TopPGF
发布于 2016/04/16 18:01
字数 676
阅读 12
收藏 0
点赞 1
评论 0

安装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
0
0
php添加pcntl扩展

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

白狼栈
2016/03/07
1K
0
Debian5 安装mongodb 以及php的mongodb扩展

debian5 安装mongodb已经相关的php扩展 1 安装编译环境 apt-get install build-essential 2 安装相关头文件 apt-get install libc6-dev 3 在使用php时会发现在当初编译时没有把某个模块编译进...

China_OS
2012/05/28
0
0
linux(centos)下安装PHP的PDO扩展

PHP 数据对象PDO扩展为PHP访问数据库定义了一个轻量级的一致接口。PDO 提供了一个数据访问抽象层,这意味着,不管使用哪种数据库,都可以用相同的函数(方法)来查询和获取数据。最近在我们的...

it1000001001
2017/07/31
99
0
CentOS 配置PHP支持socket扩展

PHP有很多扩展功能,我们在初次安装的时候并没有安装某些扩展,可能在使用的过程中,又需要用到这些扩展。php提供了一个phpize工具供我们安装需要的扩展。 下面以安装socket扩展来介绍phpiz...

woshiluo
2017/09/04
0
0
PHP开启多线程扩展

php从5.3开始支持多线程pthreads扩展,并同时支持window和linux。 pthreads可以实现多任务同步或异步执行,它提供了创建多线程应用所需的全套工具,默认未安装。 安装 window系统下:http://...

ttlxihuan
2017/02/14
0
0
Linux下利用phpize安装php扩展

php有很多扩展功能,我们在初次安装的时候并没有安装某些扩展,可能在使用的过程中,又需要用到这些扩展。php提供了一个phpize工具供我们安装需要的扩展。 下面我通过安装socket扩展来介绍p...

Surjur
2014/09/03
0
0
在linux系统中利用phpize脚本安装php扩展模块

php安装成功后,在bin目录下会生成一个名叫phpize的可执行脚本,这个脚本的用途是动态安装php扩展模块。 利用phpize脚本安装php扩展模块的好处是在安装php时没有安装的扩展可以再以后随时安装...

jingwul
2012/03/14
0
0
Centos-php_memcached扩展安装

Centos-php-memcached 扩展 注意要安装的是PHP的Memcached扩展,跟PHP的memcahe扩展有点区别。 phpmemcached支持binary protocol 协议,而phpmemcache协议不支持,php_memcached支持对同一k...

weixingo
2015/10/12
693
0
PHP 扩展模块--PECL

PECL 的全称是 The PHP Extension Community Library ,是一个开放的并通过 PEAR(PHP Extension and Application Repository,PHP 扩展和应用仓库)打包格式来打包安装的 PHP 扩展库仓库。通过...

Laruence
2009/01/28
11.9K
2

没有更多内容

加载失败,请刷新页面

加载更多

下一页

10.28 rsync工具介绍 , rsync常用选项, rsync通过ssh同步

rsync远程同步 重点!重点!!重点!!! 例子 • rsync -av /etc/passwd /tmp/1.txt • rsync -av /tmp/1.txt 192.168.188.128:/tmp/2.txt rsync格式 • rsync [OPTION] … SRC DEST • rs......

Linux_老吴
12分钟前
0
0
iis php 环境搭建,非常详细的教程

准备篇 一、环境说明: 操作系统:Windows Server 2016 PHP版本:php 7.1.0 MySQL版本:MySQL 5.7.17.0 二、相关软件下载: 1、PHP下载地址: http://windows.php.net/downloads/releases/ph...

T_star
14分钟前
0
0
Day35 rsync通过服务同步

rsync通过服务同步 rsyncd.conf配置文件详解 port:指定在哪个端口启动rsyncd服务,默认是873端口。 log file:指定日志文件。 pid file:指定pid文件,这个文件的作用涉及服务的启动、停止等...

杉下
20分钟前
0
0
【最新最全】为 iOS 和 Android 的真机和模拟器编译 Luajit 库

编译 Luajit 库,的确是一个挑战。因为官网的教程,在当前版本的 Xcode 和 NDK 环境中,已经不适用了。以前只是编译了适用于真机的 Luajit 库。最近在尝试编译模拟器 Luajit 库,就顺便梳理了...

ios122
20分钟前
0
0
rsync至ssh同步

rsync: 文件同步工具,可实现“增量拷贝”;使用yum安装rsync包 常用选项:-a=-rtplgoD (-r同步目录,-t保持文件的时间属性,-p保持文件的权限属性,-l保持软连接,-g保持文件的属组,-o保持...

ZHENG-JY
25分钟前
0
0
TradingView 学习笔记

#前言 公司最后需要使用TradingView展示K线图走势。由于之前没接触过,拿到文档时一脸蒙逼。还好找到二篇文章+Demo代码,直接改改就行了。 #被批 由于上面的懵懂,有个问题困扰4个小时没解决...

hihubs
25分钟前
0
0
10.28 rsync工具介绍~10.31 rsync通过ssh同步

rsync命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。rsync使用所谓的“rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而...

洗香香
28分钟前
1
0
php如何使用JSON-RPC查找以太坊中的最新块哈希hash值?

我用PHP中开发了一个以太坊块资源管理器,并成功地与我的服务器Geth节点建立了JSON-RPC通信。然而,当我试图找出最后一个区块时,我陷入了困境。我在https://ethereum.gitbooks.io/frontier...

智能合约
34分钟前
1
0
卷积为什么要旋转180度

参考《最容易理解的对卷积(convolution)的解释》 https://blog.csdn.net/bitcarmanlee/article/details/54729807 这篇博客详细讲解了“卷积”,提及了为什么要反转180度,我简述下。 1.卷积的...

datadev_sh
37分钟前
0
0
【2018.07.18学习笔记】【linux高级知识 20.23-20.26】

20.23/20.24/20.25 告警系统邮件引擎 告警系统邮件引擎由两个文件组成,放在/mon/mail/目录下:mail.py、mail.sh mail.py:是邮件的核心python脚本,邮件功能的实现mail.sh:是告警邮件系统...

lgsxp
41分钟前
16
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部