PHP开发工具ptask、PPI、PHP-CPP、Pickle介绍

以下为你介绍的PHP开发工具都可用在Linux系统上:ptask(PHP 的协程扩展)、PPI(PHP互操作性框架)、PHP-CPP(PHP 开发扩展 C++ 库)、Pickle(PHP 扩展安装器)。

1、ptask(PHP 的协程扩展)

ptask 是 PHP 的协程扩展。

使用这个扩展,使得PHP可以像Python和Lua一样使用协程。

安装:

$ git clone https://github.com/liexusong/ptask

$ cd ptask/libtask

$ make

$ sudo make install

$ cd ../ext

$ phpize

$ ./configure --with-php-config=path-to-php-config

$ make

$ sudo make install

修改php.ini,添加extension=ptask.so。

使用:

<?php

function handler($arg)

{

for ($i = 0; $i < 1000; $i++) {

echo $arg, ": ", $i, "\n";

ptask_yield();

}

}

ptask_create("handler", "handler1");

ptask_create("handler", "handler2");

ptask_run();

下载地址:https://github.com/liexusong/ptask

2、PPI(PHP互操作性框架)

PPI 是一个PHP互操作性框架。它提供了一个让PHPer可以根据自己最喜欢的PHP框架中选择最喜欢的工具的平台。PPI bootstraps框架基于主流的ZendFrameworks2、Symfony2、Laravel4、FuelPHP、Doctrine2等框架构建。

要求:

PHP 5.4.0或以上。

贡献:

PPI是一个开源的,社区驱动的项目。

如果您要提交拉取请求,请在您自己的GitHub分支上进行。

首先派生PPI Framework存储库并在本地克隆fork:

$ git clone git@github.com:YOUR_USERNAME/framework.git

$ git remote add upstream git://github.com/ppi/framework.git

$ git checkout -b feature/BRANCH_NAME master

使用PHP-CS-Fixer工具应用PPI编码标准(使用PPI自定义修复程序):

$ ./vendor/bin/php-cs-fixer fix -v

工作完成后,重新建立功能分支的基础并进行推送:

$ git checkout master

$ git fetch upstream

$ git merge upstream/master

$ git checkout feature/BRANCH_NAME

$ git rebase master

$ git push --force origin feature/BRANCH_NAME

再次转到GitHub并在ppi/framework存储库中发出拉取请求。

下载地址:https://github.com/ppi/framework

3、PHP-CPP(PHP 开发扩展 C++ 库)

PHP开发工具ptask、PPI、PHP-CPP、Pickle介绍

PHP-CPP是一个用于开发PHP扩展的C++库。它提供了一套详实易用的类,用于开发PHP扩展。

示例1:

Php::Value hello_world(){

return "hello world!";}

示例2:

#include <phpcpp.h>

/**

*  Global variable that stores the number of times 

*  the function updateCounters() has been called in total

*  @var    int

*/

int invokeTotalCount = 0;

/**

*  Global variable that keeps track how many times the

*  function updateCounters() was called during the

*  current request

*  @var    int

*/

int invokeDuringRequestCount = 0;

/**

*  Native function that is callable from PHP

*

*  This function updates a number of global variables that count

*  the number of times a function was called

*/

void updateCounters()

{

// increment global counters

invokeTotalCount++;

invokeDuringRequestCount++;

}

/**

*  Switch to C context, because the Zend engine expects get get_module()

*  to have a C style function signature

*/

extern "C" {

/**

*  Startup function that is automatically called by the Zend engine

*  when PHP starts, and that should return the extension details

*  @return void*

*/

PHPCPP_EXPORT void *get_module() 

{

// the extension object

static Php::Extension extension("my_extension", "1.0");

// install a callback that is called at the beginning 

// of each request

extension.onRequest([]() {

// re-initialize the counter

invokeDuringRequestCount = 0;

});

// add the updateCounter method to the extension

extension.add("updateCounters", updateCounters);

// return the extension details

return extension;

}

}

下载地址:https://gitee.com/mirrors/php-cpp

4、Pickle(PHP 扩展安装器)

PHP开发工具ptask、PPI、PHP-CPP、Pickle介绍

Pickle 可帮你轻松的安装 PHP 扩展,支持所有平台。基于 Composer 开发。

使用方法:

$ bin/pickle install memcach

安装:

克隆此存储库并使用Composer安装依赖项:

$ composer install

也可以使用phar,但它可能已过时。

也可以克隆存储库并运行以下命令:

$ cd pickle

$ composer install --no-dev --optimize-autoloader

$ php -d phar.readonly=0 box.phar build

用法:

用法非常简单,例如,要安装memcache扩展,请运行以下命令:

$ bin/pickle install memcache

您还可以在扩展目录中使用以下命令使用pickle:

$ cd myext

$ bin/pickle install

可使用以下命令获得命令列表:

$ bin/pickle list

要获得给定命令的扩展帮助,请使用:

$ bin/pickle help install

要转换软件包(基于当前PECL安装程序的package.xml),请使用:

$ bin/pickle convert /home/pierre/myext/

或从扩展源目录运行它。

下载地址:https://github.com/FriendsOfPHP/pickle

注明

以上就是PHP开发工具ptask、PPI、PHP-CPP、Pickle的介绍内容,这些PHP开发工具都能使用在Linux操作系统中。

栏目相关文章