php7安装yar扩展的方法详解

yipeiwu_com5年前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定义命令空间的几个注意点(推荐)

1.声明命令空间必须是程序脚本的第一条语句。另外,所有非 PHP 代码包括空白符都不能出现在命名空间的声明之前。 下面是错误的示例: <html> <?ph...

PHP对象递归引用造成内存泄漏分析

通常来说,如果PHP对象存在递归引用,就会出现内存泄漏。这个Bug在PHP里已经存在很久很久了,先让我们来重现这个Bug,示例代码如下: <?php class Foo...

PHP入门教程之数学运算技巧总结

本文实例讲述了PHP入门教程之数学运算技巧。分享给大家供大家参考,具体如下: Demo1.php <?php // $a = '5'; // $b = 7+$a; //...

PHP的curl实现get,post和cookie(实例介绍)

类似于dreamhost这类主机服务商,是显示fopen的使用 的。使用php的curl可以实现支持FTP、FTPS、HTTP HTPPS SCP SFTP TFTP TELNET DI...

递归删除一个节点以及该节点下的所有节点示例

有的时候删除信息的时候,需要把这条信息下的所有的都删除,这个时候就需要递归删除了。下面是我在做部门管理中的删除部门功能的时候写的一段递归删除一个部门以及它的所有子部门的一段代码。仅供大家...