php swoole yaf,分享在PHP 7下安装Swoole与Yar,Yaf的方法教程

周末闲来无事,玩玩swoole,所以下面这篇文章主要给大家介绍了在PHP 7下安装Swoole与Yar,Yaf的方法教程,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。

本文开发坏境:CentOS 7

PHP 7.0.16

安装PECL

//php版本 > 7

$ wget http://pear.php.net/go-pear.phar

$ php go-pear.phar

//php版本 < 7

$ yum install php-pear

//否则会报错PHP Parse error: syntax error, unexpected //'new' (T_NEW) in /usr/share/pear/PEAR/Frontend.php on //line 91

安装swoole

$ sudo pecl install swoole

//报错如下

//Warning: Invalid argument supplied for foreach() in //Command.php on line 249

vi `which pecl`

//找到最后一行

exec $PHP -C -n -q $INCARG -d date.timezone=UTC -d output_buffering=1 -d variables_order=EGPCS -d safe_mode=0 -d register_argc_argv="On" $INCDIR/peclcmd.php "$@"

去掉 -n 标示

//报错如下

//running: phpize

//Can't find PHP headers in /usr/include/php

//安装 php-devel

sudo yum install php70w-devel

成功!

//Build process completed successfully

//Installing '/usr/lib64/php/modules/swoole.so'

//install ok: channel://pecl.php.net/swoole-1.9.8

配置 php.ini

$ php -i | grep php.ini

//修改或者添加

extension=swoole.so

安装 Yar和Yaf

$ sudo ./pecl install msgpack

//pecl/yar requires PHP (version >= 5.2.0, version <= 5.6.99), installed version is 7.0.16

//注意PHP7,要使用yar-2.0.2

$ sudo ./pecl install yar-2.0.2 //注意yar-2.0.2版本

//添加,json.so 要放到前面。否则会报

//PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/yar.so' - /usr/lib64/php/modules/yar.so: undefined symbol: php_json_decode_ex in Unknown on line 0

extension=json.so //放前面

extension=msgpack.so

extension=yar.so

//重启php服务

sudo systemctl restart php-fpm.service

//其他报错

//perl: warning: Setting locale failed.

//perl: warning: Please check that your locale //settings:

// LANGUAGE = (unset),

// LC_ALL = (unset),

// LANG = "en_US.UTF-8"

$ localedef -v -c -i en_US -f UTF-8 en_US.UTF-8

//其他报错

//checking for cURL in default path... not found

//configure: error: Please reinstall the libcurl distribution - easy.h should be in /include/curl/

$ sudo yum -y install curl-devel

//安装Yaf

$ sudo ./pecl install yaf

//更新php.ini

extension=yaf.so

//重启服务

$ sudo systemctl restart php-fpm.service

//安装脚手架

$ git clone http://pecl.php.net/package/yaf

$ cd php-yaf/tools/cg

$ php yaf-cg app

//配置 项目目录指向 app/index.php

//访问配置host

nginx 配置

server {

listen ****;

server_name domain.com;

root document_root;

index index.php index.html index.htm;

if (!-e $request_filename) {

rewrite ^/(.*) /index.php/$1 last;

}

}

Enjoy it!

4a4e1358808b597f8b599970d24b3fab.png

5f94a3ecab569177aed4cdbf1e127982.png

f8bb0a2a90000812935df2d1a98429f5.png

09604163d538396c9e1feb27955bd466.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值