Ubuntu14.04 安装 php libevent扩展

  今天想研究一下php的libevent扩展,于是就在本地的虚拟机上尝试安装。由于本人的linux基础不是很好,中间走了一些弯路。现在记录一下,具体的我安装的步骤,希望能让需要的人少走弯路。

  1、安装php环境

  sudo apt-get install php5

  执行完这个命令之后,Ubuntu系统会自动安装环境。php.ini 文件在 

  /etc/php5/apache2/php.ini

  /etc/php5/cli/php.ini

  记住记住,我们 libevent 运行在 php-cli模式下,因此我们只要关注 /etc/php5/cli/php.ini 这个配置文件即可。

  此时安装的php,我们用 php -m 命令查看,许多的有用的扩展并没有装上,这是我们还需要运行 :

  sudo apt-get install php5-dev

  这个命令会安装,接下来我们需要的 phpize 和 php-config

 

  2、安装 libevent

  php的libevent扩展,依赖于unix的 libevent。所以首先我们应该去安装libevent

1 wget http://cloud.github.com/downloads/libevent/libevent/libevent-2.0.20-stable.tar.gz
2 tar zxvf libevent-2.0.20-stable.tar.gz
3 cd libevent-2.0.20-stable/
4 ./configure --prefix=/usr/local/libevent-2.0.20/
5 make
6 make install

  没什么好说的,按照 命令逐条执行即可。出现没有权限的 问题,加 sudo 命令即可。

 

  3、安装 php libevent 扩展

  php libevnet的地址在官方 pecl库中可以找到。执行如下命令安装:

1 wget http://pecl.php.net/get/libevent-0.1.0.tgz
2 tar -zxvf libevent-0.1.0.tgz 
3 cd libevent-0.1.0
4 /usr/bin/phpize
5 ./configure --with-php-config=/usr/bin/php-config --with-libevent=/usr/local/libevent-2.0.20/
6 make && make install

  记得最后将  extension=libevent.so 加到 /etc/php5/cli/php.ini 中,执行:

  sudo gedit /etc/php5/cli/php.ini  

  打开编辑保存即可

  

 

  加上 PHP Libevent扩展介绍:

  1、常量表:

  

 

  2、函数以及解释:

  • event_base_free() 释放资源,这不能销毁绑定事件
  • event_base_loop() 处理事件,根据指定的base来处理事件循环
  • event_base_loopbreak() 立即取消事件循环,行为各break语句相同
  • event_base_loopexit() 在指定的时间后退出循环
  • event_base_new() 创建并且初始事件
  • event_base_priority_init() 设定事件的优先级
  • event_base_set() 关联事件到事件base
  • event_buffer_base_set() 关联缓存的事件到event_base
  • event_buffer_disable() 禁用一个缓存的事件
  • event_buffer_enable() 启用一个指定的缓存的事件
  • event_buffer_fd_set() 改变一个缓存的文件系统描述
  • event_buffer_free() 释放缓存事件
  • event_buffer_new() 建立一个新的缓存事件
  • event_buffer_priority_set() 缓存事件的优先级设定
  • event_buffer_read() 读取缓存事件中的数据
  • event_buffer_set_callback() 给缓存的事件设置或重置回调hansh函数
  • event_buffer_timeout_set() 给一个缓存的事件设定超时的读写时间
  • event_buffer_watermark_set 设置读写事件的水印标记
  • event_buffer_write() 向缓存事件中写入数据
  • event_add() 向指定的设置中添加一个执行事件
  • event_del() 从设置的事件中移除事件
  • event_free() 清空事件句柄
  • event_new() 创建一个新的事件
  • event_set() 准备想要在event_add中添加事件
posted @ 2016-12-08 14:57  NickBai  阅读(1446)  评论(0编辑  收藏  举报