php7安装yar扩展的方法详解

yipeiwu_com6年前PHP代码库

本文实例讲述了php7安装yar扩展的方法。分享给大家供大家参考,具体如下:

体验RPC框架Yar需要:

1. 装二进制打包协议msgpack

2. 装yar拓展和依赖

一. 安装二进制打包协议msgpack

1. 安装PHP拓展包有很多种方式,当然没什么是比pecl更加来得暴力,用这个之前要确认phpize是否存在

find / -name phpize

2. 如果phpize不存在

yum install php-devel

3. Ok,先装msgpack

pecl install msgpack

安装跳了一大堆编译过程过程,省略ING 只关心后几行

Build process completed successfully
Installing '/usr/include/php/ext/msgpack/php_msgpack.h'
Installing '/usr/lib64/php/modules/msgpack.so'
install ok: channel://pecl.php.net/msgpack-0.5.6
configuration option "php_ini" is not set to php.ini location
You should add "extension=msgpack.so" to php.ini

安装完 msgpack.so 会自动复制到 php 扩展库,并写好配置。

二. 安装 yar

1. 下载 yar

wget http://pecl.php.net/get/yar-2.0.0.tgz

2. 解压编译

tar -zxvf yar-2.0.0.tgz
cd cd yar-2.0.0
/usr/bin/phpize
./configure --with-php-config=/usr/bin/php-config7.0*

遇到问题:

checking for cURL in default path... not found
configure: error: Please reinstall the libcurl distribution - easy.h should be in <curl-dir>/include/curl/

3. 安装 curl-devel

yum -y install curl-devel
sudo apt-get install libcurl4-gnutls-dev

ps:curl vs curl-deval

参考: http://stackoverflow.com/questions/4976971/compiling-php-with-curl-where-is-curl-installed

4. 安装 yar

make && make install

5. 复制 yar.so 到 php 扩展库下

sudo cp yar.so /usr/lib/php/20151012/yar.so

6. 扩展写配置文件

echo "extension=yar.so" > /etc/php/7.0/mods-available/yar.ini
ln -sf /etc/php/7.0/mods-available/yar.ini /etc/php/7.0/fpm/conf.d/20-yar.ini
ln -sf /etc/php/7.0/mods-available/yar.ini /etc/php/7.0/cli/conf.d/20-yar.ini

7. 重启 php-fpm nginx

service php7.0-fpm restart
service nginx restart

ps: php -ir 查询 phpinfo

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP扩展开发教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》、《PHP网络编程技巧总结》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

相关文章

PHP设计模式之解释器模式的深入解析

PHP设计模式之解释器模式的深入解析

解释器(Interpreter)模式,它包括一个具有复合类分层结构的文法表现,规则是映射到类,跟随在文法后面的表达式可以被转换成一个抽象的语法树,除了复合模式的实例对象图外,没有别的内容...

PHP系列学习之日期函数使用介绍

介绍   PHP是一门非常令人惊奇的语言。它足够强大(最大的博客(wordpress)的核心语言),它足够广泛(运行在最大社交网站facebook上),它足够简单(作为初学者首选入门语言...

php算法实例分享

只打印0   具体个数由输入的参数n决定   如n=5就打印00000 <?php $n = $_GET['n']; for ($i=0; $i < $n...

使用adodb lite解决问题

我使用adodb完整版的时候, 服务器竟然不支持,我差点自己去写个类, 把adodb的函数实现,以致我不用改我的程序但是现在我用了adodb-lite,这个是简化的版本,还不错,挺好的h...

php时区转换转换函数

复制代码 代码如下:/* * 时区转换 */function toTimeZone($src, $from_tz = 'America/Denver', $to_tz...